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

本篇文章内容来源于:MySQL LIKE 子句详细说明以及案例