《MySQL必知必会》学习笔记——第八章(用通配符过滤)
文章目录
- 8.1 LIKE操作符
- 8.1.1 % 通配符
- 8.1.2 _ 通配符
- 8.2 使用通配符的技巧
- 总结:
前文连接:
《MySQL必知必会》——书中表的生成
《MySQL必知必会》——第三章(了解数据库和表) 关键词:USE、SHOW
《MySQL必知必会》——第四章(检索数据) 关键词:SELECT
《MySQL必知必会》——第五章(排序检索数据) 关键词:ORDER BY
《MySQL必知必会》——第六章(过滤数据) 关键词:WHERE
《MySQL必知必会》——第七章(数据过滤) 关键词:WHERE、AND、OR、IN
前面介绍的过滤数据,都是已知具体数据进行过滤,但有时我们需要一些模糊过滤,例如选出某列中包含特定文本的行(如选取文本中包含like的行),这时我们就需要用通配符去做,具体看下面:
8.1 LIKE操作符
LIKE操作符是WHERE语句下的子句操作符,其和通配符一起使用来对数据进行模糊匹配。
8.1.1 % 通配符
% 通配符表示: 任意字符出现任意次数,即匹配任意字符串 ,我们具体看看就懂:
# jet% 会去匹配任意以jet开头的词!
SELECT prod_id, prod_name FROM products WHERE prod_name LIKE 'jet%'
通配符可以在任意位置使用,也可以使用多个通配符,我们举例看看:
# %anvil% 匹配任意位置出现anvil的词!
SELECT prod_id, prod_name FROM products WHERE prod_name LIKE '%anvil%'
# s%e 匹配以s开头,以e结尾的任意词
SELECT prod_id, prod_name FROM products WHERE prod_name LIKE 's%e';
注意:
- %可以匹配0个、1个或任一个字符串
- 但不匹配NULL,即当某行为NULL时,是匹配不上的
8.1.2 _ 通配符
_(下划线)通配符 作用和%通配符一样,仅仅是只能匹配一个字符,而%通配符可以匹配任意多个字符!举例看看:
# _ ton anvil 仅仅匹配下划线处只有一位字符,并且后面要一致的字符串!,如下图所示:
SELECT prod_id, prod_name FROM products WHERE prod_name LIKE '_ ton anvil';
注意:
- % 可以匹配0、1、任意多个字符
- _ 只能匹配一个字符,不能多也不能少
8.2 使用通配符的技巧
通过上面的举例,我们发现通配符是很有用的,但也是有代价的,因为通配符的搜索处理是通过遍历数据得到的,和前面过滤数据相比慢很多!
技巧:
- 若其他操作也可以达到目的,尽量不要使用通配符
- 在使用通配符时,尽量不要将其放在搜索模式的开头,这个位置是最慢的
- 注意通配符放置的位置!
总结:
- SELECT 列名 FROM 表名 WHERE 列名 LIKE ‘通配符’:匹配某字符的行
《MySQL必知必会》学习笔记——第八章(用通配符过滤)相关推荐
- 《MySQL必知必会》学习笔记十(增删改语句使用)------掌握部分
MySQL必知必会知识预览 第一章--了解SQL 第二章--MySQL简介 第三章--使用MySQL 第四章--检索数据 第五章--排序检索数据 第六章--过滤数据 第七章--数据过滤 第八章--用通 ...
- MYSQL必知必会学习笔记(二)
MYSQL必知必会四-五章--检索.排序 书中部分代码展示: ##第四第五章 SELECT prod_name FROM products; /*从products表中检索一个叫prod_name的列 ...
- mysql必知必会学习笔记(一)
MYSQL必知必会第三章--了解数据库和表 书中部分代码展示: CREATE DATABASE crashcourse; /*创建名为 crashcourse 的新数据库*/SHOW DATABASE ...
- mysql必知必会_5天学完《MySQL必知必会》学习笔记之第四天
本篇知识点 更新删除数据.创建操纵表.视图.存储过程 更新和删除数据 使用UPDATE语句更新(修改)表中的数据: 更新表中特定行(使用WHERE语句 更新表中所有行 UPDATE语句以要更新的表名开 ...
- 《MySQL必知必会学习笔记》:更新和删除数据
更新和删除数据 上篇博文介绍了下插入数据的几种方式.这篇博文就来讲述下更新和删除数据. 更新数据 更新(修改)表中的数据,使用update语句. 更新数据一般采用如下两种方式: 更新表中特定行的数据. ...
- 5天学会mysql_5天学完《MySQL必知必会》学习笔记之第四天
本篇知识点 更新删除数据.创建操纵表.视图.存储过程 更新和删除数据使用UPDATE语句更新(修改)表中的数据:更新表中特定行(使用WHERE语句 更新表中所有行 UPDATE语句以要更新的表名开始, ...
- MySQL必知必会 学习笔记
mysql必知必会 了解mysql 什么是数据库 数据库:保存有组织的数据的容器(通常是一个文件或一组文件) 表 表是一种结构化的文件,可用来存储某种特定类型的数据 主键 一列(或一组列),其值能够唯 ...
- mysql日期维表sql文件_《MySQL必知必会》笔记(SQL练习+建表语句)
站在巨人的肩上 Standing On Shoulders Of Giants 部分转自:https://www.jianshu.com/p/294502893128 https://blog.csd ...
- 【SQL】【读书笔记】《MySQL必知必会》
本文为<MySQL必知必会>[1]读书笔记,用于总结知识点和框架,仅供参考和交流,如有不妥请联系.由于软件版本更新,书中的一些代码已经不再适用,本文主要从SQL基本语句进行增删减.窗口函数 ...
- MySQL必知必会笔记(一)基础知识和基本操作
第一章 了解MySQL 数据库 保存有组织的数据的容器.(通常是一个文件或一组文件) 人们经常使用数据库这个术语代替他们使用的软件.这是不正确的,确切的说,数据库软件应称为DBM ...
最新文章
- Android 最火的高速开发框架xUtils
- deepin v20.4设置全局搜索的快捷键
- GDCM:gdcm::Dumper的测试程序
- WebForm编辑器的相关资源
- struct作为map的key时,需要重载该结构体
- mysql安全性特点_MySQL数据库有哪些特点?为何能得到了广泛应用?
- Python 直接赋值、浅拷贝和深度拷贝全解析
- 【论文笔记】K-plet Recurrent Neural Networks for Sequential Recommendation
- java 广告插件_徒手创建一个chrome扩展-屏蔽广告插件
- word加载项打包发布注意事项总结
- python socket模块 和pyqt5_PyQt5+Socket实现CS架构的建议聊天室
- jquery富文本编译器_jQuery 移动端artEditor富文本编辑器
- 使用直播网站源码,搭建直播平台的最难点
- Windows自带md5校验工具使用说明
- Visual Studio 2005超级集成版本下载
- ubuntu下鼠标右键没有新建文档?
- Win10 制作Ubuntu U盘启动盘
- 计算机视觉检测 白皓月,基于深度神经网络的视线跟踪技术研究
- 三、E906移植----FPGA生成可用的比特流并实现串口发送
- python 小游戏500行以内_README.md