使用MySQL正则表达式查询
MySQL用WHERE子句对正则表达式提供了初步的支持,允许你指定用正则表达式过滤SELECT检索出的数据。
REGEXP后所跟的东西作为正则表达式处理。
- 代码
- SELECT prod_name
- FROM products
- WHERE prod_name REGEXP '1000'
- ORDER BY prod_name;
- ------返回------
- +------------------------+
- | prod_name |
- +------------------------+
- | JetPack 1000 |
- +------------------------+
表示匹配任意一个字符。
- 代码
- SELECT prod_name
- FROM products
- WHERE prod_name REGEXP '.000'
- ORDER BY prod_name;
- ------------返回-----------
- +-------------------------+
- | prod_name |
- +-------------------------+
- | JetPack 1000 |
- | JetPack 2000 |
- +-------------------------+
MySQL中的正则表达式匹配不区分大小写。
为区分大小写,可使用BINARY关键字。
如:WHERE prod_name REGEXP BINARY 'JetPack .000'
为搜索两个串之一(或者这个串,或者为另一个串),使用 | 。
| 作为OR操作符,表示匹配其中之一。可给出两个以上的OR条件。
- 代码
- SELECT prod_name
- FROM products
- WHERE prod_name REGEXP '1000 | 2000'
- ORDER BY prod_name;
- ------------返回------------
- +----------------------+
- | prod_name |
- +----------------------+
- | JetPack 1000 |
- | JetPack 2000 |
- +----------------------+
[ ] 匹配任何单一字符。
[123]定义一组字符,意思是匹配1或2或3.
[ ]是另外一种形式的OR语句,[123] Ton 就是 [1 | 2 | 3] Ton 的缩写。
^ 否定一个字符集合,将匹配除指定字符外的任何东西。[^123]将匹配除这些字符外的任何东西。
- 代码
- SELECT prod_name
- FROM products
- WHERE prod_name REGEXP '[123] Ton'
- ORDER BY prod_name;
- -------------返回------------
- +--------------------+
- | prod_name |
- +--------------------+
- | 1 ton anvil |
- | 2 ton anvil |
- +--------------------+
匹配范围
[0123456789] 或 [0-9] 将匹配数字0到9
[a-z] 匹配任意字母符号
- 代码
- SELECT prod_name
- FROM products
- WHERE prod_name REGEXP '[1-5] Ton'
- ORDER BY prod_name;
- ----------返回-----------
- +-------------------+
- | prod_name |
- +-------------------+
- | .5 ton anvil |
- | 1 ton anvil |
- | 2 ton anvil |
- +-------------------+
匹配特殊字符
\\ 为前导。即转义.正则表达式内具有特殊意义的所有字符都必须以这种方式转义。
\\- 表示查找 -
\\. 表示查找 .
- 代码
- SELECT prod_name
- FROM vendors
- WHERE vend_name REGEXP '\\.'
- ORDER BY vend_name;
- -------------返回-------------
- +----------------------+
- | vend_name |
- +----------------------+
- | Furball Inc. |
- +----------------------+
LIKE 匹配整个串,而REGEXP匹配子串。
使用MySQL正则表达式查询的更多相关文章
- MYSQL———正则表达式查询!
在使用select查询的过程中,有时会用到正则表达式对结果进行查询,将学习到的内容进行总结! 一 语法结构如下: 二 常用匹配方式进行示例说明 首先创建表student,表的结构如下: 1·^:查询s ...
- MySQL之单表查询 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER BY 八 限制查询的记录数:LIMIT 九 使用正则表达式查询
MySQL之单表查询 阅读目录 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER B ...
- MySQL模糊查询:LIKE模式和REGEXP模式
MySQL模糊查询提供了两种模式:LIKE模式和REGEXP模式. LIKE模式 LIKE模式是使用的LIKE 或 NOT LIKE 比较运算符进行模糊查询. SELECT 字段 FROM 表 WHE ...
- mysql模糊查询like/REGEXP
原文:mysql模糊查询like/REGEXP 增删改查是mysql最基本的功能,而其中查是最频繁的操作,模糊查找是查询中非常常见的操作,于是模糊查找成了必修课. like模式 like意思是长得像, ...
- mysql模糊查询 like/REGEXP
原文:mysql模糊查询like/REGEXP 增删改查是mysql最基本的功能,而其中查是最频繁的操作,模糊查找是查询中非常常见的操作,于是模糊查找成了必修课. like模式 like意思是长得像, ...
- Mysql数据库连接查询
Mysql数据库连接查询 连接是关系数据库模型的主要特点.连接查询是关系数据库中最主要的查询,主要包括内连接.外连接等.通过连接运算可以 ...
- 企业级中带你ELK如何实时收集分析Mysql慢查询日志
什么是Mysql慢查询日志? 当SQL语句执行时间超过设定的阈值时,便于记录到指定的日志文件中或者表中,所有记录称之为慢查询日志 为什么要收集Mysql慢查询日志? 数据库在运行期间,可能会存在这很多 ...
- MySql之查询基础与进阶
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/8283547.html 一:基本查询 SELECT [DISTINCT] 列1,列2,列3... FROM 表 ...
- MySQL简单查询详解-单表查询
MySQL简单查询详解-单表查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查询的执行路径 一条SQL查询语句的执行过程大致如下图所示: 1>.客户端和服务端通过my ...
随机推荐
- VS2012界面改为英文
需要下载一个语言包 http://www.microsoft.com/en-us/download/confirmation.aspx?id=30681 还是不要指望这个,简直坑爹. 我把所有中文版的 ...
- uva1638Pole Arrangement
递推. 用f[n][l][r]表示n个柱子,从左面能看到l个,从右面能看到r个. 如果我们按照从小到大的顺序放置的话,放置最高的柱子后,大量状态都能递推到当前状态,很难写出递推式. 但是我们如果从小到 ...
- sqlserver错误"试图扩大物理文件时,MODIFY FILE 遇到操作系统错误 112(磁盘空间不足。)。"处理
正常还原的时候报错: Microsoft SQL-DMO (ODBC SQLState: 42000)---------------------------试图扩大物理文件时,MODIFY FILE ...
- directdraw的多画面显示rgb
// showpicDlg.cpp : 实现文件 // #include "stdafx.h" #include "showpic.h" #include &q ...
- Windows 下音频数据采集和播放
音频操作所需头文件和链接库 #include<mmsystem.h>#include<mmreg.h>#pragma comment(lib, "winmm.lib ...
- delphi实现ado的高级功能
ADO是Microsoft存取通用数据源的标准引擎.ADO通过封装OLE DB而能够存取不同类型的数据,让应用程序能很方便地通过统一的接口处理各种数据库.ADO由一组COM对象组成,每一个不同的原生A ...
- winform实现自动更新并动态调用form实现
winform实现自动更新并动态调用form实现 标签: winform作业dllbytenull服务器 2008-08-04 17:36 1102人阅读 评论(0) 收藏 举报 分类: c#200 ...
- WebView 中重写javascript 常用函数
常规函数 javascript 常规函数包括以下3个函数: (1)alert函数:显示一个警告对话框,包括一个OK按钮. 对应:http://www.dreamdu.com/javascript ...
- 写的cursor demo仅作记录
declare @objectID int; declare objcur cursor for object_id from m_object open objcur fetch next from ...
- C# 中LinkLabel的简单使用
界面中加入一个LinkLabel控件