答案:LIKE操作符用于模糊查询,支持%和_通配符,可匹配任意或单个字符,常用于查找指定模式的字符串;例如'%li%'匹配包含"li"的名字,'_o%'匹配第二个字母为"o"的字符串;默认不区分大小写,可通过BINARY实现区分;含特殊字符时需用ESCAPE转义;但前导通配符可能导致全表扫描,影响性能。

在 MySQL 中,LIKE 操作符用于在 WHERE 子句中进行模糊匹配查询。它通常与通配符配合使用,用来查找符合某种模式的字符串数据。
MySQL 支持两种主要的通配符:
例如:
LIKE 'a%':查找以 "a" 开头的字符串LIKE '%abc':查找以 "abc" 结尾的字符串LIKE '%mysql%':查找包含 "mysql" 的字符串LIKE 'a_b':匹配像 "aab"、"acb" 这样中间一个任意字符的三字母字符串假设有一个用户表 users,结构如下:
id | name | email ---|----------|------------------ 1 | Alice | alice@example.com 2 | Bob | bob@test.com 3 | Charlie | charlie@demo.com
执行以下查询:
SELECT * FROM users WHERE name LIKE '%li%';SELECT * FROM users WHERE email LIKE '%@example.com';SELECT * FROM users WHERE name LIKE '_o%';在大多数默认配置下,MySQL 的 LIKE 查询是不区分大小写的,前提是字段使用的是不区分大小写的排序规则(如 utf8_general_ci)。
如果需要区分大小写,可以使用 BINARY 关键字:
SELECT * FROM users WHERE name LIKE BINARY 'Alice'; —— 区分大小写匹配SELECT * FROM users WHERE name LIKE BINARY 'alice'; —— 不会匹配 "Alice"如果要查找的字符串本身包含 % 或 _,需要使用 ESCAPE 关键字指定转义字符。
SELECT * FROM users WHERE name LIKE '%\_%' ESCAPE '\';
SELECT * FROM users WHERE name LIKE '%!%%' ESCAPE '!'; —— 查找包含 "%" 的名字
基本上就这些。LIKE 查询简单实用,但注意在大表上对无索引字段使用前导通配符(如 LIKE '%abc')会导致全表扫描,影响性能。
以上就是mysql如何使用like模糊查询的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号