LIKE 操作符

功能描述

LIKE 操作符用于在 SQL 查询中根据指定的模式匹配字符串。它可以帮助你查找包含特定字符或模式的数据。使用 LIKE 操作符时,你可以使用通配符来表示一个或多个字符。

参数说明

  • str (string):需要匹配的原始字符串。
  • pattern (string):包含通配符的模式字符串。
  • escape_char(可选):单个字符,用于转义模式中的通配符 %_,使其作为普通字符匹配。

返回结果

返回一个布尔值,表示 str 是否匹配 pattern。

通配符说明

  • %:表示任意数量的字符(包括零个字符)。
  • _:表示任意单个字符。
  • 默认转义字符为 \。可通过 ESCAPE 子句指定自定义转义字符。

语法

str LIKE pattern
str LIKE pattern ESCAPE escape_char
str NOT LIKE pattern
str NOT LIKE pattern ESCAPE escape_char

使用示例

  1. 匹配以 "Hello" 开头的字符串:
SELECT 'HelloWorld' LIKE 'Hello%';

结果:

true
  1. 匹配包含 "lo" 的字符串:
SELECT 'HelloWorld' LIKE '%lo%';

结果:

true
  1. 匹配以 "ld" 结尾且包含 "lo" 的字符串:
SELECT 'HelloWorld' LIKE '%lo_ld';

结果:

false
  1. 使用单个字符通配符匹配包含 "oW" 的字符串:
SELECT 'HelloWorld' LIKE 'Hello_W%';

结果:

true
  1. 结合 NOT 关键字,查找不匹配特定模式的字符串:
SELECT 'HelloWorld' NOT LIKE 'Hello%';

结果:

false
  1. 使用 ESCAPE 子句匹配包含 % 字面量的字符串:
SELECT 'h%' LIKE 'h#%' ESCAPE '#';

结果:

true
  1. ESCAPE 子句与通配符混合使用:
SELECT 'h%awkeye' LIKE 'h#%a%k%e' ESCAPE '#';

结果:

true
  1. 使用 ESCAPE 匹配包含 _ 字面量的字符串:
SELECT 'i_dio' LIKE 'i$_d_o' ESCAPE '$';

结果:

true

注意事项

  • ESCAPE 字符必须是单个常量字符。
  • ESCAPE 字符后面只能跟 %_ 或 ESCAPE 字符本身,跟其他字符会报错。
  • ILIKE(不区分大小写的 LIKE)同样支持 ESCAPE 子句。

联系我们
预约咨询
微信咨询
电话咨询