LIKE 子句用于在 SQL 查询中进行模糊匹配,它支持使用通配符进行更灵活的匹配。通过 LIKE 子句,可以查找包含特定模式的记录,而不仅仅是精确匹配。


📚 目录

  1. LIKE 子句简介
  2. 通配符
  3. 基本语法结构
  4. LIKE 与 AND/OR 结合使用
  5. 区分大小写
  6. 参考资料与链接

1. LIKE 子句简介

LIKE 子句允许你在查询中进行模糊匹配,它通常与 WHERE 子句一起使用,以筛选符合特定模式的数据。LIKE 子句是基于模式匹配来查找数据的,支持使用通配符如 %_


2. 通配符

LIKE 子句使用的常见通配符有两个:

  • %:代表零个或多个字符,常用于匹配不确定长度的字符。
  • _:代表单个字符,用于匹配一个特定位置的字符。

3. 基本语法结构

SELECT 列名 FROM 表名 WHERE 列名 LIKE 模式;

  • 模式:包含一个或多个通配符的字符串,定义了匹配的模式。

示例

SELECT * FROM users WHERE name LIKE 'A%';

此语句将返回所有以字母 ‘A’ 开头的用户记录。


4. LIKE 与 AND/OR 结合使用

LIKE 子句可以与 ANDOR 结合使用,以进一步细化筛选条件。通过将多个 LIKE 子句与其他逻辑运算符组合,开发者可以创建复杂的查询条件。

示例

SELECT * FROM users WHERE name LIKE 'A%' AND city LIKE 'New%';

此语句将返回名字以 ‘A’ 开头且居住在 ‘New’ 开头的城市的所有用户。


5. 区分大小写

在 SQLite 中,LIKE 默认不区分大小写。也就是说,'A%''a%' 会匹配相同的记录。如果需要区分大小写,可以使用 COLLATE 子句来指定大小写敏感的比较方式。

示例

SELECT * FROM users WHERE name LIKE 'A%' COLLATE BINARY;

此语句将返回名字以大写字母 ‘A’ 开头的所有用户,而不会匹配小写字母 ‘a’ 开头的名字。


6. 参考资料与链接