在 SQL 中,通配符与 LIKE 操作符结合使用,用于模糊匹配查询。这些通配符可以帮助你指定搜索模式,以便在 WHERE 子句中查找列中的特定模式。以下是 SQL 中可用的通配符及其详细描述和代码示例。
SQL 通配符
%:替代 0 个或多个字符。
描述:% 可以匹配任意长度的任意字符序列,包括空序列。
代码示例:SELECT *
FROM customers
WHERE last_name LIKE '%son'; -- 匹配所有以 'son' 结尾的名字
_:替代一个字符。
描述:_ 可以匹配任意单个字符。
代码示例:SELECT *
FROM customers
WHERE first_name LIKE 'A_'; -- 匹配所有以 'A' 开头,后面跟着任意单个字符的名字
[charlist]:字符列中的任何单一字符。
描述:[charlist] 可以匹配方括号中列出的任意单个字符。
代码示例:SELECT *
FROM customers
WHERE last_name LIKE 'M%[ao]%'; -- 匹配所有以 'M' 开头,中间包含 'a' 或 'o' 的名字
[^charlist] 或 [!charlist]:不在字符列中的任何单一字符。
描述:[^charlist] 或 [!charlist] 可以匹配不在方括号中列出的任意单个字符。
代码示例:SELECT *
FROM customers
WHERE last_name LIKE 'M%[^ao]%'; -- 匹配所有以 'M' 开头,中间不包含 'a' 或 'o' 的名字