SQL LIKE 运算符:用法、示例和通配符解释
SQL中的LIKE运算符用于在WHERE子句中搜索列中的指定模式。通常与LIKE运算符一起使用的有两个通配符:
- 百分号
%代表零个、一个或多个字符。 - 下划线
_代表一个单个字符。
以下是LIKE运算符的用法和示例:
示例
选择所有以字母 "a" 开头的客户:
SELECT * FROM Customers
WHERE CustomerName LIKE 'a%';
语法
LIKE运算符的一般语法如下:
SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;
演示数据库
以下是示例中使用的 Customers 表的一部分:
| CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
|---|---|---|---|---|---|---|
| 1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
| 2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
| 3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
| 4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
| 5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
下划线 _ 通配符
下划线 _ 通配符代表一个单个字符。它可以是任何字符或数字,但每个 _ 代表一个且仅代表一个字符。
示例
返回以 'L' 开头,然后是一个通配符字符,然后是 'nd',然后是两个通配符字符的城市中的所有客户:
SELECT * FROM Customers
WHERE city LIKE 'L_nd__';
百分号 % 通配符
百分号 % 通配符代表任意数量的字符,甚至是零个字符。
示例
返回包含字母 'L' 的城市中的所有客户:
SELECT * FROM Customers
WHERE city LIKE '%L%';
以...开头
要返回以特定字母或短语开头的记录,请在字母或短语的末尾添加 %。
示例
返回所有以 'La' 开头的客户:
SELECT * FROM Customers
WHERE CustomerName LIKE 'La%';
以...结尾
要返回以特定字母或短语结尾的记录,请在字母或短语的开头添加 %。
示例
返回所有以 'a' 结尾的客户:
SELECT * FROM Customers
WHERE CustomerName LIKE '%a';
包含
要返回包含特定字母或短语的记录,请在字母或短语的前后添加 %。
示例
返回包含短语 'or' 的所有客户:
SELECT * FROM Customers
WHERE CustomerName LIKE '%or%';
组合通配符
任何通配符,如 % 和 _,都可以与其他通配符一起使用。
示例
返回以 "a" 开头且至少为 3 个字符长的客户:
SELECT * FROM Customers
WHERE CustomerName LIKE 'a__%';
示例
返回第二个位置有 "r" 的客户:
SELECT * FROM Customers
WHERE CustomerName LIKE '_r%';
不使用通配符
如果没有指定通配符,短语必须精确匹配才能返回结果。
示例
返回所有来自西班牙的客户:
SELECT * FROM Customers
WHERE Country LIKE 'Spain';
LIKE运算符非常有用,因为它允许您执行模糊搜索,查找与特定模式匹配的数据。
最后
为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。
看完如果觉得有帮助,欢迎点赞、收藏和关注

SQL LIKE 运算符:用法、示例和通配符解释的更多相关文章
- SQL中ISNULL用法示例
ISNULLSQL查询示例SELECT ISNULL 使用指定的替换值替换 NULL. 语法 :ISNULL ( check_expression , replacement_val ...
- 9.mybatis动态SQL标签的用法
mybatis动态SQL标签的用法 动态 SQL MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么 ...
- SQL LIKE 运算符
SQL LIKE 运算符 在WHERE子句中使用LIKE运算符来搜索列中的指定模式. SQL LIKE 操作符 LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式. 有两个通配符与LIKE运 ...
- Linux find 用法示例
Linux中find常见用法示例 ·find path -option [ -print ] [ -exec -ok command ] {} \; find命令的参数 ...
- SQL 中ROLLUP 用法
SQL 中ROLLUP 用法 ROLLUP 运算符生成的结果集类似于 CUBE 运算符生成的结果集. 下面是 CUBE 和 ROLLUP 之间的具体区别: CUBE 生成的结果集显示了所选列中值的所有 ...
- [转]Linux中find常见用法示例
Linux中find常见用法示例[转]·find path -option [ -print ] [ -exec -ok command ] {} \;find命令的参 ...
- 腾讯云上PhantomJS用法示例
崔庆才 前言 大家有没有发现之前我们写的爬虫都有一个共性,就是只能爬取单纯的html代码,如果页面是JS渲染的该怎么办呢?如果我们单纯去分析一个个后台的请求,手动去摸索JS渲染的到的一些结果,那简直没 ...
- Linux find常用用法示例
在此处只给出find的基本用法示例,都是平时我个人非常常用的搜索功能.如果有不理解的部分,则看后面的find运行机制详解对于理论的说明,也建议在看完这些基本示例后阅读一遍理论说明,它是本人翻译自fin ...
- Go基础系列:双层channel用法示例
Go channel系列: channel入门 为select设置超时时间 nil channel用法示例 双层channel用法示例 指定goroutine的执行顺序 双层通道的解释见Go的双层通道 ...
- Linux中 find 常见用法示例
Linux中find常见用法示例 #find path -option [ -print ] [ -exec -ok command ] {} \; #-print 将查找到的文件输出到标准输出 #- ...
随机推荐
- 详解SSL证书系列(2)SSL证书对网站的好处
在如今谷歌.百度等互联网巨头强制性要求网站 HTTPS 化的情况下, 网站部署 SSL 证书已然成为互联网的发展趋势,我们也知道了 SSL证书可以防止网络安全威胁.那么除此外为网站部署 SSL 证书还 ...
- 问题:RuntimeError: Model class LuffyAPI.apps.user.models.UserInfo doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
问题截图 报错原因 提示app未注册,但实际上已经注册的 1. # settings配置文件移动后要将这个settings添加到环境变量中 sys.path.insert(0, BASE_DIR) # ...
- 【Azure Redis】Redis-CLI连接Redis 6380端口始终遇见 I/O Error
问题描述 使用Redis-cli连接Redis服务,因为工具无法直接支持TLS 6380端口连接,所以需要使用 stunnel 配置TLS/SSL服务.根据文章(Linux VM使用6380端口(SS ...
- 【Azure 应用程序见解】通过无代码方式在App Service中启用Application Insights后,如何修改在Application Insights中显示的App Service实例名呢?
问题描述 在App Service中,可以非常容易的启动Application Insights服务.默认情况中,在Application Insights中查看信息时候,其中的对象名称默认为App ...
- nginx 基本功能
1.nginx简介 官方文档 Nginx是一个高性能WEB服务器,除它之外Apache.Tomcat.Jetty.IIS,它们都是Web服务器,或者叫做WWW(World Wide Web)服务器,相 ...
- Java 常见的两个错误 -------1.栈溢出 java.lang.StackOverflowError 2.堆溢出 java.lang.OutOfMemoryError /OOM
1 package com.bytezero.exception; 2 3 /** 4 * 5 * @Description Error 6 * @author Bytezero·zhenglei! ...
- Cordova下载文件,监听进度,退出疯狂报错
如题. 报错如下: W/cr_AwContents: Application attempted to call on a destroyed WebView java.lang.Throwable ...
- python AI 应用开发编程实战 大模型实战基础(一)
自从 由美国主导openAi公司开发的gpt大模型问世以来,人工智能技术一直在推动整个科技行业发展,所以当下全球大公司都在布局Ai产品应用,这是这二年出了好几千个Ai产品应用,全球大大小小甚至超出近上 ...
- vue2init vue2z
<template> <div> </div> </template> <script> export default { name: 'b ...
- 摆脱鼠标系列 - vscode 花括号 开始结束 间的跳转 Ctrl + Shift + \
为什么 摆脱鼠标系列 - vscode 花括号 开始结束 间的跳转 Ctrl + Shift + \ 快速移动到下一个 注意有时候输入法会有问题 因为 Ctrl + Shift 是切换输入法,所以回头 ...