mysql 正则

mysql 正则学习

基本字符匹配
select desk from dealer_info where desk regexp "82107777";

. 表示匹配任意一个字符
select name from dealer_info where name regexp "a.";

MySQL中的正则表达式匹配不区分大小写, 可以使用 binary来区分
select name from dealer_info where name regexp BINARY "a.";
select name from dealer_info where BINARY name regexp "a.";

or匹配:
SELECT * FROM `card` where json_str REGEXP BINARY "a|b"
[123]定义一组字符,意思是匹配1或2或3
^ 否定一个字符集合,将匹配除指定字符外的任何东西。[^123]将匹配除这些字符外的任何东西

匹配范围:
[0123456789] 或 [0-9] 将匹配数字0到9
[a-z] 匹配任意字母符号

alnum
文字数字字符

alpha
文字字符

blank
空白字符

cntrl
控制字符

digit
数字字符

graph
图形字符

lower
小写文字字符

print
图形或空格字符

punct
标点字符

space
空格、制表符、新行、和回车

upper
大写文字字符

xdigit
十六进制数字字符

元字符 说明
* 0个或多个匹配
+ 1个或多个匹配(等于 {1, })
? 0个或1个匹配(等于 {0, 1})
{n} 指定数目的匹配
{n, } 不少于指定数目的匹配
{n ,m} 匹配数目的范围(m不超过255)

匹配连在一直的4位数字:WHERE prod_name REGEXP ‘[[:digit:]]{4}‘

^ 文本的开始
$ 文本的末尾
[[:<:]] 词的开始
[[:>:]] 词的结尾

时间: 2024-11-01 19:32:57

mysql 正则的相关文章

Mysql正则

摘自:http://www.runoob.com/mysql/mysql-regexp.html 模式 描述 ^ 匹配输入字符串的开始位置.如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置. $ 匹配输入字符串的结束位置.如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置. . 匹配除 "\n" 之外的任何单个字符.要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]

mysql正则查询 模糊查询

-- ==============正则查询================ /* SQL默认是忽略大小写的 正则模式使用REGEXP和NOT REGEXP操作符(或RLIKE和NOT RLIKE,它们是同义词).正则即字段值包含正则的内容即可 . 匹配任何单个的字符,表示任意单字符 [...] 匹配包含方括号内某单个字符的字符串,[0-9]匹配0到9之间的某个数字 * 匹配零个或多个在它前面的字符 {n} 匹配n个在它前面的字符 如果希望大小写都匹配上可以这样写.[aA] 匹配大小写的 a,[a

Mysql 正则获取字段的交集【转】

问题描述 比如table1中有两条记录 name no a    2,9 b    8,10 然后有一串字符串,是0,1,2,3,4 然后通过一条sql,找出no为2,9的记录来``` 因为字符串中有2,数据中也有2 详细解释 ------------------------------ 表的字段就是 name  no     a     2,9    b     8,10   字符串是str="0,1,2,3,4" 接下来就是查 no字段里跟str里有交集的记录 查询的结果就是nam

mysql数据库常用命令笔记

连接数据库:mysql -h localhost -u root -p 000000 退出:exit;    \q;    quit; SET foreign_key_checks = 0; 禁用外键 ->表示当前命令没有执行或者等待命令执行符来确认: \c 用来清除->效果 '>.">  表示之前的mysql语句缺少引号 Informaction_schema  主要存储数据库中数据库对象信息 表信息 列信息 权限信息  数据字典 Mysql库.存储了mysql的权限信

mysql高级排序&amp;高级匹配查询示例

在大多数应用场景下,我们使用mysql进行查询时只会用到'=', '>' , '<' , in, like 等常用的方法,看起来,大多数情况下,已经足以应付我们的小型应用了.不过,在一些特殊场景,则需要特殊的查询方式了. 1. 根据状态来排序的查询 假设现在一个记录有四种状态,未处理(0).正在处理(2).处理成功(1).处理失败(4),之所以他们的值是这个样子,是因为我们一般情况下是不会用它去排序,所以自然的就想到这样的一些值赋予意义.但是,在排序的时候怎么处理呢? 假如要求的先后顺序是这样

MySQL中REGEXP正则表达式使用大全

REGEXP在mysql是用来执行正则表达式的一个函数 像php中的preg之类的函数了,regexp正则函数如果只是简单的查询使用like即可,但复杂的还是需要使用regexp了,下面我们来看看. MySql用户手册建议,在构造简单查询时,仍使用通配符. 如:Select [*|fieldname list] From [tablename] where [fieldname] like ["%someletter"|"%someletter%","_&

05: MySQL高级查询

目录 1.1 GROUP BY分组使用 1.2 mysql中NOW(),CURDATE(),CURTIME()的使用 1.3 DATEDIFF() 函数 1.4 DATE_FORMAT() 以不同格式显示时间 1.5 MySQL 正则表达式 1.1 GROUP BY分组使用 GROUP BY介绍 1. GROUP BY 语句根据一个或多个列对结果集进行分组,在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. 2. 涉及到的操作符:GROUP BY,HAVING,ORDER BY,

批量创建数据库和批量数据恢复

近期公司有一个数据库需要迁移,但是里面创建的数据库比较多,我们采取脚本将库单独备份,然后上传到另一台主机,新建数据库,然后恢复数据库.将自己写的几个小脚本粘贴到此, 分库压缩备份 #/bin/sh #version 0.1 MYUSER=mysqlback [email protected] #SOCKET=/data/3306/mysql.sock MYLOGIN="mysql -u$MYUSER -p$MYPASS " MYDUMP="mysqldump -u$MYUSE

索引与sql优化问题汇总

各位亲爱的云友, 非常感谢大家踊跃参加DBA专家门诊一期:索引与sql优化,很多云友都提出了自己的问题,门诊主任医师玄惭对大家提的问题一一作了解答.现已整理好这些问题,分享在此,欢迎来拿,绝对干货! 篇幅较长,耐心细看! 我们将赠送每位提问者每人一本凌云杂志第四期,请各位以论坛短消息形式将姓名.电话.地址发送给管理员xiaofanqie. 啊里新人(Q1):索引我一般都是只有主键,这玩意儿,是不是越少越好? 玄惭(A1):在日常的业务开发中,常见使用到索引的地方大概有两类: 第一类.做业务约束需