在 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' 的名字
- 描述: