MySQL中正则表达式查询的SQL语句集锦

网友投稿 978 2023-05-15

MySQL中正则表达式查询的SQL语句集锦

MySQL中正则表达式查询的SQL语句集锦

MySQL作为关系型数据库的一种,起支持SQL进行数据库的增删改查操作是其必备功能之一!

SQL的查询功能中,碰到需要检索或替换那些符合某个模式的文本内容是最常见的应用场景,此时就需要用到正则表达式根据指定的匹配模式匹配文本中符合要求的特殊的字符。

我们可以先假设下面几个场景:

从一个文本中提取电话号码;从一大串字符中查找重复字符;进行文章审核时对敏感词进行替换操作。

【1】数据准备

建表:

造数据

【2】^:匹配文本的开始字符

【结论】以字母“l”开头的记录都能查询出来。

【3】$:匹配文本的结束字符

【结论】以字母“r”结尾的记录都能查询出来。

【4】.:匹配任意一个字符

【结论】两个字母之间必须要存在另外一个字符才能符合匹配条件。

【5】*:匹配任意多个字符

【结论】包含匹配条件中罗列出的某个字母的记录都被认为是符合的。

【6】+:匹配其前面字符至少一次

【结论】可以实现多个字母的匹配。

【7】包含某个或几个字符

【结论】使用LIKE则要结合%才能生效。

【8】[]:匹配字符集中任何一个字符

【结论】返回[]中所有字母的记录。

【9】[^]:匹配不包含在指定集合中的任何字符

【结论】对于ID值为1至5的记录都被剔除。

【10】指定匹配次数:{n,}或{n,m}

【结论】指定的字母必须连续出现,{n,m}中的m才生效。

总结

MySQL支持的正则表达式有:

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:MySQL查询语句很慢?可以试试几种SQL优化
下一篇:MySQL数据库ORDER BY优化总结(为排序使用索引)
相关文章