SQL常用语句--模糊查询REGEXP

REGEXP 是正则表达式(regular expression) 的缩写 . 正则表达式在搜索字符串时非常强大. 它允许我们搜索更复杂的模式。

模糊匹配

1)包含特定字符串

sql 复制代码
SELECT *
FROM customers
WHERE last_name REGEXP 'field'  -- 查找名字中带field的记录

2)我们可以用 '^' 表示字符串的开头,

sql 复制代码
SELECT *
FROM customers
WHERE last_name REGEXP '^field' -- 表示我们的姓氏必须以field开头

3)我们还用美元符号 $ 代表字符串末尾,

sql 复制代码
SELECT *
FROM customers
WHERE last_name REGEXP 'field$' -- 表示我们的姓氏必须以field结尾

搜寻多个单词

表示查询以field开头的姓氏或者姓氏中含有mac或者姓氏中含有rose

sql 复制代码
SELECT *
FROM customers
WHERE last_name REGEXP '^field|mac|rose'

假设你想搜寻姓氏里有 e 的顾客,

如果你想要确保在e前要有g或者i两者之一, 这时需要用到方括号[],在括号里加上多个字母, 比如g,I,m,对应了任何姓氏里有ge或者ie或者me的顾客.

sql 复制代码
SELECT *
FROM customers
WHERE last_name REGEXP '[gim]e' -- 可以用 '[a-h]e' 表示 '[abcdefg]e'.

总结:

sql 复制代码
^:beginning
$:end
|:logical or
[abcd]:使用 [] 匹配任意在括号里列举的单字符.
a-f:表示 [abcdefg], - 代表一个范围.
相关推荐
zone_z11 分钟前
Oracle 表空间检查与监控配置详解
数据库·oracle
武昌库里写JAVA38 分钟前
C语言 函数指针和指针函数区别 - C语言零基础入门教程
vue.js·spring boot·sql·layui·课程设计
冉冰学姐1 小时前
SSM装修服务网站5ff59(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·ssm 框架·装修服务网站
库库8391 小时前
Redis分布式锁、Redisson及Redis红锁知识点总结
数据库·redis·分布式
沧澜sincerely1 小时前
Redis 缓存模式与注解缓存
数据库·redis·缓存
Elastic 中国社区官方博客2 小时前
Elasticsearch 推理 API 增加了开放的可定制服务
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
nzxzn3 小时前
MYSQL第二次作业
数据库·mysql
核桃杏仁粉3 小时前
excel拼接数据库
数据库·oracle·excel
TiAmo zhang3 小时前
SQL Server 2019实验 │ 设计数据库的完整性
数据库·sqlserver
冻咸鱼4 小时前
MySQL的CRUD
数据库·mysql·oracle