什么是通配符

通配符是用来匹配值的一部分的特殊字符,然后再字面值、通配符或两者组合构成完整的搜索条件。

如果使用通配符,必须结合LIKE操作符使用。LIKE后跟的是完整的搜索条件。

注意:通配符搜索只能用于文本字段(字符串),非文本数据类型字段不能使用通配符搜索。

百分号(%)通配符

语句:SELECT prod_id, prod_name FROM Products WHERE prod_name LIKE ‘Fish%’;

输出结果:
prod_id prod_name


BNBG01 Fish bean bag toy

上述语句是为了找出所有以词Fish起头的产品,使用了搜索模式’Fish%’。在执行这条子句时,将检索任意以Fish起头的词。无论Fish之后有多少字符。所以,%和其他字符组合查询时,代表%表示%所处的这个位置可以出现任意字符,每个字符可以出现任意次数,只要%以外的其他固定值是完全符合的。

也可以同时使用多个通配符:
语句:SELECT prod_id, prod_name FROM Products WHERE prod_name LIKE ‘%bean bag%’;

输出结果:
prod_id prod_name


BNBG01 Fish bean bag toy
BNBG02 Bird bean bag toy
BNBG03 Rabbit bean bag toy

另外,通配符也可以出现在搜索条件的中间,找出以固定字符起头、结尾的所有行。

注意:除了能匹配一个或多个字符外,%还能匹配0个字符。%代表搜索条件中给定位置的0个、1个或多个字符

下划线(_)通配符

语句:SELECT prod_id, prod_name FROM Products WHERE prod_name LIKE ‘__ inch teddy bear’;

输出结果:
prod_id prod_name


BR02 12 inch teddy bear
BR03 18 inch teddy bear

下划线的用途与%一样,但它只匹配单个字符,而不是多个字符。上述语句中放了两个通配符,所以匹配了两个字符的结果返回,8 inch teddy bear产品就没有匹配上,因为搜索模式要求匹配两个通配符而不是一个。所以_总是刚好匹配一个字符,不能多也不能少。

方括号([ ])通配符

语句:SELECT cust_contact FROM Customers WHERE cust_contact LIKE ‘[JM]%’ ORDER BY cust_contact;

输出结果:
cust_contact
——————
Jim Jones
John Smith
Michelle Green

上述语句找出了所有名字以J或M起头的联系人。方括号([])通配符用来指定一个字符集,它必须匹配指定位置(通配符的位置)的一个字符。由于它只能匹配单个字符。因此,任何多于一个字符的名字都不匹配。[JM]之后的%通配符匹配第一个字符之后的任意数目的字符,返回所需结果。

注意:此通配符可以用前缀字符^(脱字号)来否定。例如,下面的查询匹配不以J或M起头的任意联系人名(与前一个例子相反):SELECT cust_contact FROM Customers WHERE cust_contact LIKE ‘[^JM]%’ ORDER BY cust_contact;这条语句也可以换成使用NOT来完成。

使用通配符的注意事项

通配符搜索一般比其他搜索要耗费更长的处理时间。这里给出一些使用通配符时要记住的技巧。

  • 不要过度使用通配符。如果其他操作符能达到相同的目的,应该使用其他操作符。
  • 在确实需要使用通配符时,也尽量不要把它们用在搜索条件的开始处。把通配符置于开始处,搜索起来是最慢的。
  • 仔细注意通配符的位置。如果放错地方,可能不会返回想要的数据。

mysql学习笔记-使用通配符模糊查找相关推荐

  1. MySQL学习笔记07【事务、用户管理和权限管理】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  2. MySQL学习笔记-基础篇1

    MySQL 学习笔记–基础篇1 目录 MySQL 学习笔记--基础篇1 1. 数据库概述与MySQL安装 1.1 数据库概述 1.1.1 为什么要使用数据库 1.2 数据库与数据库管理系统 1.2.1 ...

  3. MySQL学习笔记——尚硅谷李玉婷经典版MySQL基础笔记(一)

    MySQL学习笔记--尚硅谷李玉婷经典版MySQL基础笔记(一) MySQL学习笔记目录 MySQL学习笔记--尚硅谷李玉婷经典版MySQL基础笔记(一) 一.基础知识 1.MySQL的语法规范 2. ...

  4. Mysql 学习笔记(快速复习)

    Mysql 学习笔记(快速复习) 一.MySQL 基础 1.数据库连接工具 1.1.Navicat 使用教程 2.DDL 操作数据库 2.1.创建新数据库 2.2.删除数据库 2.3.使用数据库 3. ...

  5. 数据库MySQL学习笔记高级篇(周阳)

    数据库MySQL学习笔记高级篇 1. mysql的架构介绍 mysql简介 高级Mysql mysqlLinux版的安装 mysql配置文件 mysql逻辑架构介绍 mysql存储引擎 2. 索引优化 ...

  6. Mysql学习笔记day1 --三天学完mysql所有知识点

    Mysql 超全MySQL学习笔记,三天就可以学会熟练运用SQL语句,干货满满,文章末尾有相应的练习题,可以多练练加深印象,希望我的文章对你有所帮助 一.服务器 1.什么是服务器?用于提供共享资源文件 ...

  7. 【mysql学习笔记整理】

    /*mysql学习笔记整理*/ /*常用的数据库操作对象*/ #库的操作 #创建 #数据库的创建 USE mysql; CREATE DATABASE db_x; #删除 #删除数据库 DROP DA ...

  8. 初识mysql学习笔记

    使用VMVirtualBox导入Ubuntu后,可以通过sudo apt-get install mysql-server命令下载mysql. 在学习过程中,我遇到了连接不上Xshell的问题.最终在 ...

  9. MySQL学习笔记06【多表查询、子查询、多表查询练习】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

最新文章

  1. Python字符串类型及操作总结
  2. jdk是什么?jdk1.8安装配置方法
  3. OSX Yosemite,pod install报错RPC failed; result=52,
  4. 渗透知识-SSRF漏洞
  5. js基础语法(01)-JS中+号的三种含义
  6. oracle设置每列字符数,如何修改一个数字字段
  7. 运维工程师是桥的护栏_【消息】秭归将建螺旋桥
  8. 怎样的销售能快速成交别人?
  9. python两张图片融合_python实现两张图片的像素融合
  10. 把字母排序ASC表c语言,c语言ASCII码排序
  11. LXC与宿主机共享目录(七)
  12. 你不知道的Bitmap
  13. 无法启动Windows安全中心服务怎么办
  14. 高大上的数据可视化图表,只需6步就能完成
  15. 编码中关于二义性的解释
  16. 大话2口袋版不显示服务器,大话西游2新口袋版操作指引及常见问题说明
  17. Centos7使用xrdp进行远程桌面访问
  18. OOAD教学管理系统 设计类图
  19. 电位器和编码器的区别
  20. 利用LocalBroadcastManager发送 app业内广播

热门文章

  1. 抖音小店无货源运营操作详解,实操干活,建议收藏
  2. 【gradle】gradle配置全局仓库
  3. Redis相关命令及应用场景详解
  4. ScrollBar(滚动条)的实现尝试
  5. android 自带的表情,在Android系统中使用系统自带的emoji表情
  6. 县城公众号未来到底如何走
  7. 我为什么放弃RESTful,全面拥抱GraphQL
  8. 第19课:nand flash驱动
  9. 如何解决Mac版office Excel表格打开卡顿的问题
  10. 逃不开的网络抽奖,过不去的虚假广告