MySQL通配符和正则表达式

一、通配符

1.%

匹配0,1,多个字符,但不匹配NULL

2._

匹配单个字符

3.[charlist]

匹配字符列中的任何单一字符

4.[^charlist] 或 [!charlist]

匹配不在字符列中的任何单一字符

二、正则表达式

通配符的LIKE替换为REGEXP

LIKE 匹配整个列, REGEXP 在列值内进行匹配

要区分大小写,需要写作REGEXP BINARY 'Hern .000'

1.元字符

.匹配任意一个字符;

*匹配0次或多次; ?匹配0次或1次;

+匹配1次或多次;

()组合;

{}量词,{m} 匹配某个字符正好 m 次,{m,} 匹配某个字符至少 m 次,{m,n} 匹配某个字符至少 m 次,但不超过 n 次;

^匹配字符串的开始; ^有两种用法。在集合中(用[和]定义),用它来否定该集合,否则,用来指串的开始处

$匹配字符串的结束。

2.or匹配

使用|,如 REGEXP '100|200'

3.匹配几个字符之一

[charlist]

4.匹配范围

[0123456789]可以简化为[0-9],

英文字母表可以简写为[a-z]

5.匹配特殊字符

用\防止转义

6.匹配字符类

相关推荐
瓜牛_gn42 分钟前
mysql特性
数据库·mysql
奶糖趣多多2 小时前
Redis知识点
数据库·redis·缓存
CoderIsArt3 小时前
Redis的三种模式:主从模式,哨兵与集群模式
数据库·redis·缓存
师太,答应老衲吧5 小时前
SQL实战训练之,力扣:2020. 无流量的帐户数(递归)
数据库·sql·leetcode
Yaml46 小时前
Spring Boot 与 Vue 共筑二手书籍交易卓越平台
java·spring boot·后端·mysql·spring·vue·二手书籍
Channing Lewis6 小时前
salesforce case可以新建一个roll up 字段,统计出这个case下的email数量吗
数据库·salesforce
追风林6 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
毕业设计制作和分享7 小时前
ssm《数据库系统原理》课程平台的设计与实现+vue
前端·数据库·vue.js·oracle·mybatis
ketil277 小时前
Redis - String 字符串
数据库·redis·缓存
Hsu_kk8 小时前
MySQL 批量删除海量数据的几种方法
数据库·mysql