SQL基础知识普及(十)——通配符

通配符用于替换字符串中的任何其他字符。 

通配符与SQL LIKE运算符一起使用。在WHERE子句中使用LIKE运算符来搜索列中的指定模式。 

有两个通配符与LIKE运算符一起使用:

  • - 百分号表示零个,一个或多个字符
  • _ - 下划线表示单个字符

注意: MS Access使用问号()而不是下划线(_)。

在MS Access和SQL Server中,你也可以使用:

  • [ charlist ] - 定义要匹配的字符的集合和范围
  • [^ charlist ]或[!charlist ] - 定义不匹配字符的集合和范围

通配符也可以组合使用!

下面是一些使用''和'_'通配符显示不同LIKE运算符的例子:

SQL基础知识普及(十)——通配符

演示数据库

以下是"Customers" 表中的数据:



SQL基础知识普及(十)——通配符

  • 使用 SQL 通配符

以下SQL语句选择所有客户地址以字母“北”开头:

实例

SELECT * FROM Customers
WHERE 地址 LIKE '北%';

以下SQL语句选择地址中包含“路”模式的所有客户:

实例

SELECT * FROM Customers
WHERE 地址 LIKE '%路%';


  • 使用 SQL _ 通配符

以下SQL语句选择省份以任意字符开头,然后是“东省”的所有客户:

实例

SELECT * FROM Customers
WHERE 省份 LIKE '_东省';

以下SQL语句选择地址开头为“北”,后面是任意字符,后面是“路”,后面是两个任意字符,后面是“号”的所有客户:

实例

SELECT * FROM Customers
WHERE 地址 LIKE '北_路__号';


  • 使用 SQL [字符列表] 通配符

以下SQL语句选择所有客户地址以"西"、"南"或"北"开头:

实例

SELECT * FROM Customers
WHERE 地址 LIKE '[西南北]%';

以下SQL语句选择所有客户地址不以"西"、"南"或"北"开头:

实例

SELECT * FROM Customers
WHERE 地址 LIKE '[!西南北]%';

  • 使用[!字符列表]通配符

以下两个SQL语句选择所有客户的地址不以“西”,“南”或“北”开头:

代码示例:

SELECT * FROM Customers
WHERE 地址 LIKE '[!西南北]%';

要么:

代码示例

SELECT * FROM Customers
WHERE 地址 NOT LIKE '[西南北]%';

上一篇:MD5加密原理解析及OC版原理实现


下一篇:SQL基础知识普及(五)——ORDER BY