<p>phpMyAdmin中LIKE模糊查询需在SQL标签页手写语句,如SELECT * FROM table_name WHERE column_name LIKE '%keyword%';或在「搜索」标签页选择字段、运算符设为LIKE、值填%keyword%等,注意字符集、转义及前导通配符导致索引失效问题。</p>
phpMyAdmin 里怎么写 LIKE 模糊查询
直接在 sql 标签页里写 select * from table_name where column_name like '%keyword%' 就行,不用点来点去。phpmyadmin 本身不提供图形化模糊搜索入口,所有模糊匹配都得靠手写 sql 或利用「搜索」标签页的底层逻辑。
用「搜索」标签页实现模糊匹配的实操要点
点击数据表顶部的「搜索」标签页,它本质就是帮你生成 LIKE 查询语句,但默认是全匹配(=),必须手动改:
- 在字段下拉框选中要查的列(比如
username) - 「运算符」选
LIKE(不是「等于」或「包含」) - 「值」里填带通配符的字符串,例如
%admin%或john%(%匹配任意长度字符,_匹配单个字符) - 勾选「使用正则表达式」会失效——这个选项实际触发的是
REGEXP,和LIKE冲突,别同时选
中文、特殊字符查不到?注意字符集和转义
如果查中文返回空结果,大概率是字符集不一致导致的隐式转换失败:
- 确认表和字段的排序规则是
utf8mb4_unicode_ci或类似支持 UTF-8 的规则(latin1_swedish_ci会丢中文) -
LIKE不自动转义,如果关键词本身含%或_,得用ESCAPE:例如查用户名为100%的记录,写成username LIKE '100!%' ESCAPE '!' - phpMyAdmin 对输入框内容不做预处理,粘贴进来的全角符号(比如中文百分号)会导致语法错误,务必检查是否为半角
%
性能差、卡死?模糊查询没走索引的典型表现
LIKE '%xxx'(前导通配符)几乎必然全表扫描,数据量一过万就明显变慢:
- 只有
LIKE 'xxx%'才可能用上 B-tree 索引(前提是字段有索引且查询条件最左匹配) - 想查中间片段又不想扫全表?考虑加全文索引 +
MATCH ... AGAINST,或者换 Elasticsearch 这类专用工具 - phpMyAdmin 执行慢查询时默认不中断,等几十秒没反应,可以手动点右上角「中断」按钮停掉,避免拖垮整个 MySQL 连接池
模糊查询看着简单,但字符集、索引、通配符位置这三个点任何一个没对齐,结果就出不来或慢得没法用。
立即学习“PHP免费学习笔记(深入)”;



















