信息发布→ 登录 注册 退出

like模糊查询在mysql中如何使用

发布时间:2025-10-05

点击量:
LIKE操作符用于模糊查询,配合%(任意字符)和_(单个字符)通配符使用;如查找名字以“张”开头用'张%',含“小”用'%小%',两字且第二字为“强”用'_强',结合NOT可反向查询,但前导%影响性能,建议优化索引。

在 MySQL 中,LIKE 操作符用于在 WHERE 子句中进行模糊匹配查询。它通常和通配符一起使用,用来查找符合某种模式的字符串数据。

基本语法

SELECT 列名 FROM 表名 WHERE 列名 LIKE 模式;

常用的通配符有两种:

  • %:代表任意数量的字符(包括零个字符)
  • _:代表单个字符

使用 % 进行模糊匹配

如果你想查找某个字段中以特定内容开头、结尾或包含某内容的记录,可以使用 %。

  • 查找名字以 "张" 开头的用户:
    SELECT * FROM users WHERE name LIKE '张%';
  • 查找名字以 "伟" 结尾的用户:
    SELECT * FROM users WHERE name LIKE '%伟';
  • 查找名字中包含 "小" 的用户:
    SELECT * FROM users WHERE name LIKE '%小%';

使用 _ 匹配单个字符

下划线 _ 只匹配一个字符,适合用于固定长度的模糊匹配。

  • 查找名字为两个字且第二个字是 "强" 的用户:
    SELECT * FROM users WHERE name LIKE '_强';
  • 查找第三个字符是 "明" 的三字以上名字:
    SELECT * FROM users WHERE name LIKE '__明%';

结合 NOT 使用反向模糊查询

如果想查找不满足某个模式的数据,可以用 NOT LIKE。

  • 查找名字不以 "王" 开头的用户:
    SELECT * FROM users WHERE name NOT LIKE '王%';

基本上就这些。LIKE 查询在处理文本搜索时非常实用,但注意在大表上对未索引字段使用 LIKE '%...' 可能影响性能,尤其是前导通配符会阻止索引的使用。尽量避免在左端使用 %,或者考虑使用全文索引等优化方式。

标签:# mysql  # select  # 字符串  # 左端  # 尤其是  # 可以用  # 下划线  # 你想  # 可以使用  # 有两种  # 两个字  # 个字  # 第三个  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!