T-SQL LIKE运算符

T-SQL LIKE运算符

在 Transact-SQL 中,LIKE 运算符用于搜索带有WHERE子句中指定模式的列。Transact-SQL 中的 LIKE 子句用于比较相同值以使用通配符运算符。

LIKE 运算符 结合使用的通配符有两个:

  • % – 百分号表示零个、一个或多个字符。
  • _ – 下划线表示单个字符。

注意:MS Access 在百分号(%)的位置使用星号(*)符号,在下划线(_)的位置使用问号(?)代替。

百分号(%)表示’0’、’1′ 或更多字符,而下划线(_)表示一个字符。

语法:

根据 LIKE运算符,%(百分号)和_(下划线)的基本语法。

序号 查询
1 SELECT *\column-list FROM table_name WHERE column LIKE ‘XXXX%.’
2 SELECT *\column-list FROM table_name WHERE column LIKE ‘_XXXX.’
3 SELECT *\column-list FROM table_name WHERE column LIKE ‘_XXXX_.’
4 SELECT *\column-list FROM table_name WHERE column LIKE ‘XXXX_.’
5 SELECT *\column-list FROM table_name WHERE column LIKE ‘%XXXX%.’

我们通过使用 AND 或 OR 运算符绑定 LIKE 运算符的条件。 “XXXX” 是数字或字符串值。

示例:

以下是一些示例,在其中我们显示了具有不同LIKE子句和模块’%’和’_’运算符的WHERE部分。

序号 语句及说明
1 WHERE SALARY LIKE ‘300%.’ 查找任何以 300 开头的值
2 WHERE SALARY LIKE ‘%300%.’ 查找任何位置上都有 300 的值
3 WHERE SALARY LIKE ‘_000%.’ 查找第二、第三和第四位均为 000 的值
4 WHERE SALARY LIKE ‘3_%_%.’ 查找任何以 3 开头且长度至少为 3 的字符
5 WHERE SALARY LIKE ‘%4’ 查找任何以 4 结尾的值
6 WHERE SALARY LIKE ‘_3%4.’ 查找第二个位置上有 3 并以 4 结尾的任何值
7 WHERE SALARY LIKE ‘3___4’ 查找以 3 开头且以 4 结尾的五位数中的任何值

考虑具有以下记录的 CUSTOMERS 表。

ID NAME AGE ADDRESS SALARY
01 William 32 Karachi 7000.00
02 Avery 24 London 3000.00
03 Jackson 34 Paris 1200.00
04 Harper 20 New York 1500.00
05 Ella 22 Islamabad 3400.00
06 Monty 23 Turkey 4400.00
07 Mason 26 Saudi Arabia 5050.00

示例 1:

该命令是一个示例,它将从CUSTOMERS表中显示所有SALARY以700开头的记录。

SELECT * FROM CUSTOMERS 
WHERE SALARY LIKE '700%'; 

以上命令将生成以下输出。

ID NAME AGE ADDRESS SALARY
01 William 32 Karachi 7000.00

示例 2:

以下命令是一个示例,它将显示 CUSTOMERS 表中 SALARY 以 50 结尾的所有记录。

SELECT * FROM CUSTOMERS 
WHERE SALARY LIKE '%50';

该命令将生成以下输出。

ID NAME AGE ADDRESS SALARY
07 Mason 26 Saudi Arabia 5050.00

示例 3:

以下命令是一个示例,它可以显示 CUSTOMERS 表中 SALARY 以 1 开头且以 0 结尾的所有记录。

SELECT * FROM CUSTOMERS 
WHERE SALARY LIKE '1___0'';

以上命令将生成以下输出。

ID NAME AGE ADDRESS SALARY
04 Harper 20 New York 1500.00

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程