本文概述
- 参数说明
- 使用%通配符(百分号通配符)的LIKE运算符
- 使用[]通配符的LIKE运算符(方括号通配符)
- 具有NOT运算符的类似条件
句法:
expression LIKE pattern [ ESCAPE 'escape_character' ]
参数说明 expression:它是一个字符表达式, 例如列或字段。
pattern:这是一个包含模式匹配的字符表达式。
以下是与LIKE运算符一起使用的模式的列表:
Wildcard | Explanation |
---|---|
% | 它用于匹配任何长度(包括零长度)的任何字符串。 |
_ | 它用于匹配单个字符。 |
[ ] | 它用于与[]括号中的任何字符匹配(例如[abc]将与a, b或c字符匹配) |
[^] | 它用于匹配不在[^]括号中的任何字符(例如, [^ abc]可以匹配非a, b或c字符的任何字符) |
你有一个名为” 学生” 的表, 其中包含以下数据:
文章图片
让我们在SQL Server LIKE条件下使用%通配符。在这里, 我们从” 学生” 表中检索所有名称以” L” 开头的学生。
SELECT *
FROM [srcmini].[dbo].[Student]
WHERE name LIKE 'L%';
输出
文章图片
Or
SELECT *
FROM [srcmini].[dbo].[Student]
WHERE name LIKE '%L%';
文章图片
使用[]通配符的LIKE运算符(方括号通配符) 让我们在SQL Server LIKE条件下使用[]通配符。
SELECT *
FROM [srcmini].[dbo].[Student]
WHERE name LIKE 'Aj[ie]et%';
注意:它将返回名称长度为5个字符的所有学生, 其中前两个字符为” Aj” , 后两个字符为” et” , 第三个字符为” i” 或” e” 。因此, 在这种情况下, 它将与” Ajiet” 或” Ajeet” 匹配。 输出
文章图片
具有NOT运算符的类似条件 让我们从” 学生” 表中检索名称不是以” L” 开头的所有学生。
SELECT *
FROM [srcmini].[dbo].[Student]
WHERE name NOT LIKE 'A%';
输出
文章图片
推荐阅读
- SQL Server NOT条件运算符示例
- SQL Server BETWEEN运算符示例详解
- SQL Server IS NOT NULL条件运算符
- SQL Server INTERSECT运算符用法示例
- SQL Server IN()运算符用法图解
- SQL Server EXITS条件运算符
- SQL Server更新数据示例图解
- Android内容提供器——创建自己的内容提供器
- myApps视图