SQL模糊查询(Like, Regexp)
先创建一张表
drop table if exists samplelike;
CREATE TABLE samplelike
( strcol VARCHAR(6) NOT NULL PRIMARY KEY);
-- DML :插入数据
START TRANSACTION; -- 开始事务
INSERT INTO samplelike (strcol) VALUES ('abcddd');
INSERT INTO samplelike (strcol) VALUES ('dddabc');
INSERT INTO samplelike (strcol) VALUES ('abdddc');
INSERT INTO samplelike (strcol) VALUES ('是abcdd');
INSERT INTO samplelike (strcol) VALUES ('dda是bc');
INSERT INTO samplelike (strcol) VALUES ('abddc是');
COMMIT;
当代表否定时,则LIKE和REGEXP都用NOT来表示,NOT LIKE / REGEXP
1. LIKE
1.1 匹配多个字符:“%”
- 找出以 “a”开头的
select * from samplelike where strcol like "a%";
- 找出以 "d"结尾的
select * from samplelike where strcol like "%d";
- 找出包含 “是” 的
select * from samplelike where strcol like "%是%";
1.2 匹配单个字符:“_”
一个 “_” 代表匹配一个字符
select * from samplelike where strcol like "abc___";
2. REGEXP
REGEXP是基于正则表达式匹配的。
- “.”匹配任何单个的字符。
- 一个字符类“[…]”匹配在方括号内的任何字符。 例如,“[abc]”匹配“a”、“b”或“c”。为了命名字符的一个范围,使用一个“-”。“[a-z]”匹配任何小写字母,而“[0-9]”匹配任何数字。
- “ * ”匹配零个或多个在它前面的东西。 例如,“x”匹配任何数量的“x”字符,“[0-9]”匹配的任何数量的数字,而“.”匹配任何数量的任何东西。
- MySQL是不区分大小写的。如果要区分大小写,应该使用BINARY关键字,如where xxx REGEXP BINARY ‘Hello.000’
- 多个筛选条件时可以用 “|” 隔开
Example
- 找出包含 “a是”或者“dc”
select * from samplelike where strcol regexp "a是|dc";
- 选择以 "a"开头的
select * from samplelike where strcol regexp "^[aA]"
- 找出以 “d” 结尾的
select * from samplelike where regexp "d$";
参考来源:
DataWhale-SQL: Task03: 3.4.2 LIKE谓词 – 用于字符串的部分一致查询
老生常谈:MYSQL模式匹配 REGEXP和like的用法
更多正则匹配用法:
MySQL学习笔记:like和regexp的区别
SQL模糊查询(Like, Regexp)相关推荐
- 【转载】SQL 模糊查询
SQL 模糊查询 在进行数据库查询时,有完整查询和模糊查询之分. 一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: ...
- SQL模糊查询特殊符号应用及详细案例说明
SQL模糊查询,使用like比较关键字,加上SQL里的通配符,请参考以下: 1.LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden). 2.LIKE'%inger' 将 ...
- mysql模糊查询实例_Mysql实例sql模糊查询实例详解
<Mysql实例sql模糊查询实例详解>要点: 本文介绍了Mysql实例sql模糊查询实例详解,希望对您有用.如果有疑问,可以联系我们. 导读:常用的模糊查询语句:select 字段 fr ...
- SQL 模糊查询LIKE字符串匹配
SQL模糊查询,使用like比较字,详解加例子 1.LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden). 2.LIKE'%inger' 将搜索以字母 inger 结尾的 ...
- SQL模糊查询学习心得
SQL模糊查询学习心得 在进行数据库查询时,有完整查询和模糊查询之分. 1. 一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四 ...
- sql模糊查询及通配符使用
sql模糊查询 SQL查询中可以使用where条件中的=,<,> 等符合进行条件精确过滤,但是无法模糊搜索 因此可以使用like语句进行某个字段的模糊搜索 例如: 查询 name字段中包含 ...
- 动态sql模糊查询和分页
文章目录 动态sql 模糊查询 查询返回结果集的处理 分页 动态sql BookMapper xml bookservice 测试: MapperSql.test 运行: 模糊查询 BookMappe ...
- SQL 模糊查询(like)
在进行数据库查询时,有完整查询和模糊查询之分. SQL模糊查询,使用like比较字,加上SQL里的通配符,请参考以下: 1.LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadde ...
- 微信(QQ)重名困扰探究系列之一 数据库设计与SQL模糊查询
**徐文艺 写于2022.2.15(农历正月十五)**<br/>转载请注明出处(由于文章在本人智能手机书写,同时仅分析,无法附具体图片,仅文字)联系QQ:286902544 最近偶尔听到有 ...
- 对用户信息的模糊查找java_java中对SQL模糊查询通配符%的处理
在模糊查询的SQL语句中,如果有用户输入查询通配符'%',使用 select * from table where code like '%condition%'的SQL,会查出全部记录,这个如何解决 ...
最新文章
- RH5.4下samba共享配置实例(3)
- 想快速入门NLP?我们测评了15门最火课程,帮你找到最适合的
- 2021年要关注这5个开源Kubernetes项目
- C#-文件操作类 Directory 109
- [深度学习] 自然语言处理--- 基于Keras Bert使用(下)
- MailBee.NET Objects发送电子邮件(SMTP)教程六:创建并发送带有附件的邮件
- Python05 梯形公式 Simpson公式 Cotes公式 Romber公式(附代码)
- autobank渗流分析计算教程_仿真百科 | 多孔介质渗流现象
- Python 常用函数Logging
- 东芝固态硬盘工具for linux,用东芝笔记本Portege R100下安装Linux的进来参考这篇文章...
- 微博营销常用操作方法总结
- python处理excel格式变化,分类,归类,行变列
- c语言error函数的使用方法,IsError_Excel中iserror函数的使用方法
- 请说一下你是如何理解互联网思维的?
- 如何用NLP辅助投资分析?三大海外机构落地案例详解
- 计算机网络的三大功能,计算机网络的三大主要功能是什么
- 最短路算法详解(Dijkstra/SPFA/Floyd)
- 《C语言入门100例》第二例 数列求和
- 微信公众平台Js API WeixinApi
- @程序员,你需要点金融常识