扫盲 2026.10.13 04:04 30 次浏览 0 条评论

MySQL like通配符使用

LIKE 就是模糊查,两个通配符记住就够用:% 管任意多个字符(包括零个),_ 只管一个字符。

-- % 匹配任意长度
SELECT * FROM user WHERE name LIKE '张%';    -- 张开头
SELECT * FROM user WHERE name LIKE '%张%';   -- 包含张

-- _ 只占一个位置
SELECT * FROM user WHERE name LIKE '张_';    -- 张后面正好一个字

-- 要查真正的 % 或 _ 本身,用 ESCAPE 指定转义符
SELECT * FROM user WHERE title LIKE '%\%%' ESCAPE '\\';

坑点:% 放在最前面索引基本失效,几万条数据就能感觉出来慢。多个关键字用 OR 拼起来凑合能查,数据再多就得考虑全文索引。

说点什么 0

行思随记

欢迎来到:行思随记