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.匹配字符类

相关推荐
程序新视界1 小时前
MySQL中什么是回表查询,如何避免和优化?
mysql
薛定谔的算法6 小时前
phoneGPT:构建专业领域的检索增强型智能问答系统
前端·数据库·后端
Databend7 小时前
Databend 亮相 RustChinaConf 2025,分享基于 Rust 构建商业化数仓平台的探索
数据库
得物技术8 小时前
破解gh-ost变更导致MySQL表膨胀之谜|得物技术
数据库·后端·mysql
Java水解9 小时前
【MySQL】从零开始学习MySQL:基础与安装指南
后端·mysql
Raymond运维13 小时前
MariaDB源码编译安装(二)
运维·数据库·mariadb
沢田纲吉13 小时前
🗄️ MySQL 表操作全面指南
数据库·后端·mysql
RestCloud1 天前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud1 天前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence1 天前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库