博客
关于我
MySQL学习笔记.查询数据3
阅读量:517 次
发布时间:2019-03-07

本文共 1891 字,大约阅读时间需要 6 分钟。

MySQL 正则表达式查询指南

开头匹配

正则表达式中的 ^ 符号用于匹配字符串的开头。以下是如何利用这一符号进行查询的示例:

1. 查询以 x 开头的记录

SELECT * FROM fruits WHERE f_name REGEXP '^x';

此查询会返回所有以 x 开头的记录。例如,xxxxxbabay 都会匹配。

2. 查询以 xx 开头的记录

SELECT * FROM fruits WHERE f_name REGEXP '^xx';

此查询会筛选出以 xx 开头的记录。例如,只有 xxxx 会被选中。

结尾匹配

正则表达式中的 $ 符号用于匹配字符串的结尾。以下是如何利用这一符号进行查询的示例:

1. 查询以 e 结尾的记录

SELECT * FROM fruits WHERE f_name REGEXP 'e$';

此查询会返回所有以 e 结尾的记录。例如,appleorangegrape 都会被包含在结果中。

2. 查询以 go 结尾的记录

SELECT * FROM fruits WHERE f_name REGEXP 'go$';

此查询会筛选出以 go 结尾的记录。例如,只有 mngo 会被选中。

任意字符匹配

正则表达式中的 . 符号匹配任意一个字符。以下是如何利用这一符号进行查询的示例:

1. 查询包含 ry 的记录

SELECT * FROM fruits WHERE f_name REGEXP 'r.y';

此查询会返回所有包含 ry 中任意一个的记录。例如,blackberryberrycherry 都会被包含。

重复字符匹配

正则表达式中的 * 符号匹配零个或多个重复的字符。+ 符号则表示至少一个重复的字符。

1. 查询以 mn 开头的记录(允许多个 n

SELECT * FROM fruits WHERE f_name REGEXP '^mn*';

此查询会返回所有以 mn 开头,后面可以有零个或多个 n 的记录。例如,melonmngo 都会被包含。

2. 查询以 mn 开头的记录(至少一个 n

SELECT * FROM fruits WHERE f_name REGEXP '^mn+';

此查询会返回所有以 mn 开头,后面至少有一个 n 的记录。例如,只有 mngo 会被选中。

字符串匹配

正则表达式可以通过直接指定字符串来匹配特定的文本。以下是如何进行查询的示例:

1. 查询包含 ge 的记录

SELECT * FROM fruits WHERE f_name REGEXP 'ge';

此查询会返回所有包含 ge 的记录。例如,orange 会被包含。

2. 查询包含 gena 的记录

SELECT * FROM fruits WHERE f_name REGEXP 'ge|na';

此查询会返回所有包含 gena 的记录。例如,orangebanana 都会被包含。

特定字符匹配

正则表达式中的 [] 用于匹配字符集合中的任意一个字符。以下是如何利用这一符号进行查询的示例:

1. 查询包含 ae 的记录

SELECT * FROM fruits WHERE f_name REGEXP '[ae]';

此查询会返回所有包含 ae 的记录。例如,appleapricotblackberry 等都会被包含。

重复字符串匹配

正则表达式中的 {} 用于指定字符的重复次数。以下是如何利用这一符号进行查询的示例:

1. 查询至少连续出现两次 r 的记录

SELECT * FROM fruits WHERE f_name REGEXP 'r{2,}';

此查询会返回所有至少包含两次连续 r 的记录。例如,blackberryberrycherry 都会被包含。

排除特定字符

正则表达式中的 [^...] 用于匹配不在指定集合中的字符。以下是如何利用这一符号进行查询的示例:

1. 查询非 101-104 的记录

SELECT * FROM fruits WHERE s_id REGEXP '[^101-104]';

此查询会返回所有不在 101104 之间的 s_id 的记录。例如,103105107 等都会被包含。

总结

通过合理运用正则表达式中的各个符号,可以对数据库中的记录进行精确匹配。从开头到结尾、任意字符到指定字符串,再到字符集合和重复次数的匹配,都可以通过这些符号实现。

转载地址:http://kzfnz.baihongyu.com/

你可能感兴趣的文章
nyoj 91 阶乘之和(贪心)
查看>>
nyoj------203三国志
查看>>
NYOJ-525 一道水题
查看>>
nyoj58 最少步数
查看>>
N皇后问题
查看>>
OAuth 2.0 MAC Tokens
查看>>
OAuth 及 移动端鉴权调研
查看>>
OAuth2 + Gateway统一认证一步步实现(公司项目能直接使用),密码模式&授权码模式
查看>>
OAuth2 Provider 项目常见问题解决方案
查看>>
OAuth2 vs JWT,到底怎么选?
查看>>
Vue.js 学习总结(14)—— Vue3 为什么推荐使用 ref 而不是 reactive
查看>>
oauth2-shiro 添加 redis 实现版本
查看>>
OAuth2.0_JWT令牌-生成令牌和校验令牌_Spring Security OAuth2.0认证授权---springcloud工作笔记148
查看>>
OAuth2.0_JWT令牌介绍_Spring Security OAuth2.0认证授权---springcloud工作笔记147
查看>>
OAuth2.0_介绍_Spring Security OAuth2.0认证授权---springcloud工作笔记137
查看>>
OAuth2.0_完善环境配置_把资源微服务客户端信息_授权码存入到数据库_Spring Security OAuth2.0认证授权---springcloud工作笔记149
查看>>
OAuth2.0_授权服务配置_Spring Security OAuth2.0认证授权---springcloud工作笔记140
查看>>
OAuth2.0_授权服务配置_三项内容_Spring Security OAuth2.0认证授权---springcloud工作笔记141
查看>>
OAuth2.0_授权服务配置_令牌服务和令牌端点配置_Spring Security OAuth2.0认证授权---springcloud工作笔记143
查看>>
OAuth2.0_授权服务配置_客户端详情配置_Spring Security OAuth2.0认证授权---springcloud工作笔记142
查看>>