LIKE操作符用于模糊查询,%匹配任意字符(含零个),_匹配单个字符,ESCAPE定义转义符处理字面值,BINARY控制大小写敏感,结合通配符可实现灵活字符串搜索。

在 MySQL 中,LIKE 操作符用于在 WHERE 子句中进行模糊匹配。配合通配符,可以灵活地查找符合特定模式的字符串数据。常用的通配符有两个:% 和 _(下划线)。
% 通配符:匹配任意数量的字符(包括零个字符)
% 表示任意长度的任意字符序列,可以是0个、1个或多个字符。
例如:
- SELECT * FROM users WHERE name LIKE 'a%'; —— 匹配以 "a" 开头的所有名字,如 "alice"、"alex"、"andrew"。
- SELECT * FROM users WHERE name LIKE '%son%'; —— 匹配名字中包含 "son" 的记录,如 "Johnson"、"Jackson"。
- SELECT * FROM users WHERE name LIKE '%y'; —— 匹配以 "y" 结尾的名字,如 "Mary"、"Lily"。
_ 通配符:匹配单个字符
_ 只匹配一个任意字符。常用于已知字符串长度但部分字符不确定的情况。
例如:
- SELECT * FROM users WHERE name LIKE 'A_e'; —— 匹配三个字母、以 A 开头、e 结尾,中间一个任意字符的名字,如 "Abe"、"Ade"。
- SELECT * FROM phone WHERE number LIKE '138__0_78'; —— 匹配像 '13812078' 这样格式的号码,每个 _ 对应一位数字。
转义特殊字符:使用 ESCAPE 关键字处理 _ 和 % 字面值
如果你想查找实际包含 _ 或 % 的字符串(比如用户昵称中有下划线),需要使用 ESCAPE 来定义转义字符。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~