🔍 MySQL LIKE 子句

LIKE 子句概述

LIKE 子句用于在 WHERE 子句中搜索列中的指定模式。它使用通配符进行模糊匹配,是文本搜索的重要工具。

LIKE 基本语法

-- 基本语法 SELECT * FROM table_name WHERE column LIKE pattern; -- 通配符说明 -- % : 匹配零个或多个字符 -- _ : 匹配单个字符 -- 基本示例 SELECT * FROM users WHERE username LIKE 'john%'; -- 以john开头 SELECT * FROM users WHERE username LIKE '%smith'; -- 以smith结尾 SELECT * FROM users WHERE username LIKE '%admin%'; -- 包含admin SELECT * FROM users WHERE username LIKE 'user_'; -- user加单个字符

复杂模式匹配

-- 邮箱匹配 SELECT * FROM users WHERE email LIKE '%@gmail.com'; SELECT * FROM users WHERE email LIKE '%@%.com'; -- 手机号匹配 SELECT * FROM users WHERE phone LIKE '138%'; SELECT * FROM users WHERE phone LIKE '1__________'; -- 11位手机号 -- 产品代码匹配 SELECT * FROM products WHERE product_code LIKE 'A_____'; -- A开头的6位代码

转义字符

-- 转义特殊字符 SELECT * FROM products WHERE description LIKE '%50\\% off%'; -- 包含"50% off" SELECT * FROM files WHERE filename LIKE '%\_backup%'; -- 包含"_backup" -- 自定义转义字符 SELECT * FROM products WHERE description LIKE '%50#% off%' ESCAPE '#';

📋 最佳实践

  1. 安全性:确保操作的安全性和数据完整性
  2. 性能:考虑操作对数据库性能的影响
  3. 备份:重要操作前做好数据备份
  4. 测试:在生产环境前充分测试
  5. 监控:监控操作的执行情况