在数据库查询中,MySQL的LIKE子句是实现模糊搜索的核心武器,它使用两个神奇的通配符:%(匹配任意字符序列)和_(匹配单个字符)。
通配符深度解析
%通配符能匹配零个或多个任意字符,如LIKE '张%'可找到所有"张"姓记录。而_则严格匹配单个字符,如LIKE '_明'匹配二字名且以"明"结尾的记录。
实战示例精选:
-- 前缀匹配:查询所有以「科技」结尾的公司
SELECT * FROM companies WHERE name LIKE '%科技';
-- 中缀查询:查找包含「北京」的地址
SELECT * FROM users WHERE address LIKE '%北京%';
-- 精准长度匹配:查询手机号前3后4中间任意的记录
SELECT * FROM contacts WHERE phone LIKE '138____5678';
性能警报:LIKE以通配符开头的查询(如%abc)无法使用索引,会导致全表扫描!百万级数据时务必使用全文索引或优化查询模式。
掌握LIKE子句的双面性,既能灵活实现模糊匹配,又要注意避免性能陷阱,这才是数据库查询的高手之道!
174万+

被折叠的 条评论
为什么被折叠?



