在使用select查询的过程中,有时会用到正则表达式对结果进行查询,将学习到的内容进行总结!

一 语法结构如下:

  

二 常用匹配方式进行示例说明

   首先创建表student,表的结构如下:

   

 1·^:查询student表中sname列已‘王’开始的姓名

select sname from student where sname regexp '^王';    #查出结果:王丽.王芳

 

 2·$:查询student表中sname列已‘文’结束的姓名 

select sname from student where sname regexp '文$';  #查出结果:尚文

 

 3. · :查询student表中sname的开始字符是‘李’,后面不做限制的姓名

select sname from student where sname regexp '李.'; #查出结果:李军

 

 4· [字符集合]:查询student表中sbirthday列,年份中包含8或者5的年份

select sbirthday from student where sbirthday regexp '[85]';  #查出结果1798,1795

 

 5.[^字符集合]:查询student表中sbirthday列,年份除了1976的其余年份

select sbirthday from student where sbirthday regexp '[^1976]';  #查出结果:1978,1974,1975

 

 6. s1|s2|s3:查询student表中sbirthday列,包含76|75|78的年份

select sbirthday from student where sbirthday regexp '76|75|78';   #查出结果:1976.1978.1975.1976

 

 7·×:查询student表中sname 列,‘文’出现的sname

select sname from student where sname regexp '文*';   #查出结果:尚文,说明:注意使用×是指查询的字符串可以有,也可以出现1次或者多次

 

 8.+:查询student表中sname 列,‘文’出现的sname

select sname from student where sname regexp '文+';  #查出结果:尚文,说明:注意使用+是指查询的字符串至少要出现1次

 

 9.字符{n}:查询student表中sname 列,‘文’出现1次的sname

 select sname from student where sname regexp '文{1}'; #查出结果:尚文,查询出了文出现1次的姓名,将1改为2,将返回NULL,因为student表中sname列没有文出现过2次的姓名

 

 10. 字符{m,n}:查询student表中sbirthday 列,‘7’出现至少2次,最多不超过3的年份

select sbirthday from student where sbirthday regexp '7{2,3}';  #查出结果:1977,1977

MYSQL———正则表达式查询!的更多相关文章

  1. 使用MySQL正则表达式查询

    MySQL用WHERE子句对正则表达式提供了初步的支持,允许你指定用正则表达式过滤SELECT检索出的数据. REGEXP后所跟的东西作为正则表达式处理. 代码 SELECT prod_name FR ...

  2. MySQL之单表查询 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER BY 八 限制查询的记录数:LIMIT 九 使用正则表达式查询

    MySQL之单表查询 阅读目录 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER B ...

  3. MySQL模糊查询:LIKE模式和REGEXP模式

    MySQL模糊查询提供了两种模式:LIKE模式和REGEXP模式. LIKE模式 LIKE模式是使用的LIKE 或 NOT LIKE 比较运算符进行模糊查询. SELECT 字段 FROM 表 WHE ...

  4. mysql模糊查询like/REGEXP

    原文:mysql模糊查询like/REGEXP 增删改查是mysql最基本的功能,而其中查是最频繁的操作,模糊查找是查询中非常常见的操作,于是模糊查找成了必修课. like模式 like意思是长得像, ...

  5. mysql模糊查询 like/REGEXP

    原文:mysql模糊查询like/REGEXP 增删改查是mysql最基本的功能,而其中查是最频繁的操作,模糊查找是查询中非常常见的操作,于是模糊查找成了必修课. like模式 like意思是长得像, ...

  6. Mysql数据库连接查询

                                    Mysql数据库连接查询 连接是关系数据库模型的主要特点.连接查询是关系数据库中最主要的查询,主要包括内连接.外连接等.通过连接运算可以 ...

  7. 企业级中带你ELK如何实时收集分析Mysql慢查询日志

    什么是Mysql慢查询日志? 当SQL语句执行时间超过设定的阈值时,便于记录到指定的日志文件中或者表中,所有记录称之为慢查询日志 为什么要收集Mysql慢查询日志? 数据库在运行期间,可能会存在这很多 ...

  8. MySql之查询基础与进阶

     转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/8283547.html 一:基本查询 SELECT [DISTINCT] 列1,列2,列3... FROM 表 ...

  9. MySQL简单查询详解-单表查询

    MySQL简单查询详解-单表查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查询的执行路径 一条SQL查询语句的执行过程大致如下图所示: 1>.客户端和服务端通过my ...

随机推荐

  1. 初识Java——日期的格式化

    import java.util.*; class DateTest{ static{ System.out.println("谢谢使用!");//代码块,在初始化类时,先执行代码 ...

  2. 【转】Elasticsearch学习

    原作者:铭毅天下,原文地址:blog.csdn.net/laoyang360 https://blog.csdn.net/wojiushiwo987/article/details/52244917 ...

  3. Django1.6版本的PG数据库定义手动升级

    Django1.7以后添加了migration功能,数据库定义的升级完全实现自动化,之前是通过一个叫south的app来做的.这篇文章谈一下1.6下的手动更新升级. 1.table create和ta ...

  4. Django Channels 入门指南

    http://www.oschina.NET/translate/in_deep_with_django_channels_the_future_of_real_time_apps_in_django ...

  5. Ubuntu 下命令安装 ZooKeeper

    先去 http://mirrors.hust.edu.cn/apache/zookeeper/ 查看自己想要下载的版本 使用 wget 命令去下载 wget http://mirrors.hust.e ...

  6. redis安装、使用

    官网:http://redis.io/ github地址:https://github.com/antirez/redis 简介:         redis是一个key-value存储系统.和Mem ...

  7. AspnetCore 缓存篇

    AspnetCore 缓存篇 一.缓存的作用 怎样理解缓存: 其实所有的程序,架构,优化,线程...等技术手段,最终的目的都是如何使产品快速的响应用户的操作,提高用户的体验性,目标都是为了系统的使用者 ...

  8. 13.git的简单使用

    安装 https://git-scm.com/downloads 一直点下一步就可以,安装完后打开方法:‘开始菜单’-->'Git'-->''Git Bash 安装完成后设置名字和电子邮件 ...

  9. python中@classmethod @staticmethod区别

    Python中3种方式定义类方法, 常规方式, @classmethod修饰方式, @staticmethod修饰方式. class A(object): def foo(self, x): prin ...

  10. java I/O流详解

    概况 I/O流主要分为二大类别:字符流和字节流. 字节流(基本流) 1.字节输入流    类名:FileInputStream    特点:读(对文件进行读取操作)    父类:InputStream ...