Mysql查询语句正则匹配
来源:互联网 发布:学校校园铃声软件 编辑:程序博客网 时间:2024/06/06 14:14
1.前言
最近遇到MySQL模糊查询的问题,发现MySQL也支持正则表达式。其中,like语句是完全匹配,regexp是部分匹配。
2.完全匹配like
2.1 like模糊查询
like支持的正则包括%和_。其中%代表任意个字符,
_
代表任意一个字符。
2.2 常用方式
_
和%的使用
select * from user where name like '张_林';
代表查询user表中name为张X林的用户信息
select * from user where name like '%三%';
代表查询user表中name含有”三”的用户信息
2.3.escape自定义转义符
如果我就真的要查%或者,怎么办呢?使用escape自定义转义符,escape后面就是转义符,转义字符后面的%或就不作为通配符了,注意前面没有转义字符的%和_仍然起通配符作用
Sql代码 select username from gg_user where username like '%xiao/_%' escape '/';
查找含有xiao_的名字 select username from gg_user where username like '%xiao/%%' escape '/';
查找含有xiao%的名字
3.部分匹配regexp
3.1 基本使用
- 查找以两个数字开头的ptitle字段
SELECT * FROM xm_passport.tb_user_verification where ptitle regexp '^[[:digit:]]{2}'
此处的正则表达式和egrep的大部分类似。
- 开头和结尾 ^与$
- 单个字符
[a-z]
[^a-z]
.(任意单个字符) - 重复之前的字符或字符串次数 * 任意次,? 0次或1次,{m,n}至少m次,至多n次
- 字符与字符集
[:digit:] 数字 [:alpha:] 字母 [:space:] 空格 [:punct:] 标点符号
3.2 regexp的完全匹配
- 查找由3个数字组成的ptitle字段
SELECT * FROM xm_passport.tb_user_verification where ptitle regexp '^[[:digit:]]{3}$'
0 0
- Mysql查询语句正则匹配
- mysql 正则匹配内容查询、拼接sql语句
- MySQL利用正则匹配函数实现多个条件查询
- sql 正则匹配查询
- mysql查询语句对正则表达式的支持
- mysql 正则匹配
- mysql正则匹配介绍
- mysql REGEXP 正则的实现两个字符串组的匹配(实现数据库字符串匹配查询)
- js正则查询匹配语句里面的【凋谢】【鼓掌】等 替换成图片
- mysql 正则表达式查询
- mysql正则查询
- Mysql 正则表达式查询
- mysql 查询正则表达式
- mysql 搜索 正则匹配 计算
- 2012.12.1(mysql正则匹配)
- mysql 正则表达式的匹配
- 一条mysql查询语句
- mysql随机查询语句
- 怎样贡献代码给spark team
- 函数
- 【WLAN从入门到精通-基础篇】第6期——WLAN常用概念
- 简单工厂模式
- 入门动态规划问题
- Mysql查询语句正则匹配
- JAVA.io包,输入输出流整理
- mysql分组查询并只显示每组数据的前N条数据
- MyBatis中的动态SQL,实现不确定条件的CRUD-----使用Map来传递查询的参数
- Android菜鸟练习第二十五课 TweenedAnimation的基本使用
- spring-mybatis分页插件
- 【OI做题记录】【BZOJ】【SCOI2009】生日快乐
- 罗辑思维,古典:“超级个体” 观后随笔
- 输入输出重定向