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

答案:LIKE操作符用于模糊查询,支持%和_通配符,可查找开头、结尾或包含特定字符的数据,需注意转义特殊字符和大小写敏感性。

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

mysql 中,LIKE 操作符用于在 WHERE 子句中进行模糊匹配查询。它支持使用通配符来匹配字符串中的部分内容,非常适合搜索包含、开头、结尾或中间包含特定字符的数据。

1. LIKE 的基本语法

基本结构如下:

select 列名 FROM 表名 WHERE 列名 LIKE ‘模式’;

注意:模式需要用单引号包围,且支持以下两个主要通配符:

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

2. 常见使用场景和示例

假设有一张名为 users 的表,包含字段 name

查询以某个词开头的记录

查找名字以 “张” 开头的所有用户:

SELECT * FROM users WHERE name LIKE ‘张%’;

查询以某个词结尾的记录

查找名字以 “明” 结尾的用户:

SELECT * FROM users WHERE name LIKE ‘%明’;

查询包含某个子串的记录

查找名字中包含 “小” 的用户:

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

如知AI笔记

如知笔记——支持markdown的在线笔记,支持ai智能写作、AI搜索,支持DeepseekR1满血大模型

如何在mysql中使用LIKE模糊查询27

查看详情 如何在mysql中使用LIKE模糊查询

SELECT * FROM users WHERE name LIKE ‘%小%’;

匹配固定长度的特定模式

查找名字为三个字且第二个字是 “小” 的用户:

SELECT * FROM users WHERE name LIKE ‘_小_’;

3. 转义特殊字符

如果要查找的字符串本身包含 %_,需要使用 ESCAPE 关键字指定转义符。

例如,查找包含下划线的用户名:

SELECT * FROM users WHERE name LIKE ‘%_%’ ESCAPE ”;

这里反斜杠 被定义为转义符, _ 就表示匹配实际的下划线字符。

4. 大小写敏感性说明

MySQL 的 LIKE 查询默认是否区分大小写,取决于字段的排序规则(collation)。通常 utf8_general_ci 是不区分大小写的(ci = case insensitive)。

如果需要强制区分大小写,可以使用 BINARY 关键字:

SELECT * FROM users WHERE name LIKE BINARY ‘abc%’;

基本上就这些。掌握 % 和 _ 的用法,再注意转义和大小写问题,就能灵活使用 LIKE 实现常见的模糊查询需求了。

上一篇
下一篇
text=ZqhQzanResources