在SQL中,LIKE操作符用于根据指定的模式匹配文本数据。它通常与通配符结合使用,能够灵活地查询符合特定条件的数据。以下是对LIKE操作符以及%通配符和[ ]方括号通配符的详细解释,并附有使用举例。

1. LIKE 操作符

LIKE操作符用于在字符串数据中搜索特定的模式。在使用LIKE时,模式可以包含特殊的通配符,%_是最常用的通配符,而[ ]方括号用于匹配特定的字符集。

2. 百分号(%)通配符

  • 功能%通配符用于匹配零个或多个字符。这意味着可以使用%来查找字符串中任何位置包含特定字符或子串的记录。
  • 用法

    • LIKE 'A%':查找以字母“A”开头的所有记录,不论“A”之后跟随的是哪些字符。
    • LIKE '%test%':查找包含子字符串“test”的所有记录,无论“test”出现在字符串的何处。

使用举例

SELECT prod_id, prod_name
FROM Products
WHERE prod_name LIKE 'Fish%';

该查询将返回所有产品名称以“Fish”开头的产品,如“Fish bean bag toy”。

SELECT prod_id, prod_name
FROM Products
WHERE prod_name LIKE '%bean bag%';

该查询将返回所有产品名称中包含“bean bag”字样的产品,如“Fish bean bag toy”。

3. 下划线(_)通配符

  • 功能_通配符用于匹配单个字符。它常用于精确匹配字符串中特定位置的字符。
  • 用法

    • LIKE 'A_':查找以“A”开头且紧跟一个字符的所有记录。
    • LIKE '_B_':查找第二个字符为“B”的所有三字符长度的记录。

使用举例

SELECT prod_id, prod_name
FROM Products
WHERE prod_name LIKE '__ inch teddy bear';

该查询将返回所有产品名称中包含“ inch teddy bear”且前面恰好有两个字符的产品,如“12 inch teddy bear”和“18 inch teddy bear”。

4. 方括号([ ])通配符

  • 功能[ ]通配符用于匹配方括号内列出的任一字符。可以在括号内指定字符集,也可以用连字符-来表示字符范围。
  • 用法

    • LIKE '[AB]ear':查找以“A”或“B”开头,且后面紧跟“ear”的所有记录。
    • LIKE '[A-C]at':查找以“A”、“B”或“C”开头,且后面紧跟“at”的所有记录。

使用举例

SELECT prod_name
FROM Products
WHERE prod_name LIKE '[AF]ish';

该查询将返回所有产品名称为“Fish”或“Aish”的产品。

SELECT prod_name
FROM Products
WHERE prod_name LIKE 'F[aeiou]sh';

该查询将返回所有产品名称中包含“Fash”、“Fesh”、“Fish”、“Fosh”、“Fush”中任意一个的产品。

5. 综合使用举例

SELECT prod_name
FROM Products
WHERE prod_name LIKE 'F%y' AND prod_name LIKE '%[0-9]';

这个查询将返回所有产品名称以“F”开头并以“y”结尾的产品,同时产品名称中还必须包含一个数字。例如,“Funny4”和“Fifty2”将匹配。

通过使用LIKE操作符和这些通配符,可以构建灵活的查询条件来筛选数据,无论是查找以某个字符开头的记录、包含特定子字符串的记录,还是匹配特定字符集的记录。

非常感谢您读到这里!如果您觉得这篇文章对您有帮助,可以关注一下博主。关注后,您将第一时间获得最新的AI、云计算、运维(Linux、数据库,容器等)技术,以及更多实用的技能干货。


无论你是AI新手还是AI专家,学习最前沿的AI技术,AI创富俱乐部你值得拥有!

本文由mdnice多平台发布


逼格高的汤圆
10 声望2 粉丝