参考资料

  1. MySQL 索引详细说明以及案例
  2. MySQL 临时表详细说明以及案例
  3. MySQL UNION 操作符详细说明以及案例
  4. MySQL 导入数据详细说明以及案例
  5. MySQL 事务详细说明以及案例
  6. MySQL DELETE 语句详细说明以及案例
  7. MySQL 查询数据详细说明以及案例
  8. MySQL 处理重复数据详细说明以及案例

MySQL 中的 LIKE 子句用于在 WHERE 子句中进行模式匹配。它通常与通配符一起使用,以便在字符串中查找特定的模式。

语法

SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;

通配符

  1. %:匹配任意数量的字符(包括零个字符)。

  2. _:匹配单个字符。

案例

假设有一个 employees 表,包含以下数据:

idnamedepartment
1John DoeIT
2Jane SmithHR
3Alice WongIT
4Bob BrownFinance

案例 1:查找名字以 "J" 开头的员工

SELECT * FROM employees WHERE name LIKE 'J%';

结果:

idnamedepartment
1John DoeIT
2Jane SmithHR

案例 2:查找名字中包含 "oe" 的员工

SELECT * FROM employees WHERE name LIKE '%oe%';

结果:

idnamedepartment
1John DoeIT

案例 3:查找名字中第二个字符是 "o" 的员工

SELECT * FROM employees WHERE name LIKE '_o%';

结果:

idnamedepartment
1John DoeIT

案例 4:查找部门以 "IT" 结尾的员工

SELECT * FROM employees WHERE department LIKE '%IT';

结果:

idnamedepartment
1John DoeIT
3Alice WongIT

注意事项

  • LIKE 子句是大小写不敏感的,除非使用 BINARY 关键字。

  • 可以使用 NOT LIKE 来查找不匹配模式的记录。

SELECT * FROM employees WHERE name NOT LIKE 'J%';

结果:

idnamedepartment
3Alice WongIT
4Bob BrownFinance