zoukankan      html  css  js  c++  java
  • MySQL 正则表达式

    以前都是用like加%的方式进行模糊查询,今天由于要做一个统计数据的需求,需要对某列数据进行过滤,格式不一,用like的方法并不好使,上网搜了下mysql也是支持正则表达方式的,这里直接在菜鸟教程学习下。

    在前面的章节我们已经了解到MySQL可以通过 LIKE ...% 来进行模糊匹配。
    MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配。
    如果您了解PHP或Perl,那么操作起来就非常简单,因为MySQL的正则表达式匹配与这些脚本的类似。
    下表中的正则模式可应用于 REGEXP 操作符中。

    匹配规则

    image

    举例

    了解以上的正则需求后,我们就可以根据自己的需求来编写带有正则表达式的SQL语句。以下我们将列出几个小实例(表名:person_tbl )来加深我们的理解:

    查找name字段中以'st'为开头的所有数据:

    mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

    查找name字段中以'ok'为结尾的所有数据:

    mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

    查找name字段中包含'mar'字符串的所有数据:

    mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

    查找name字段中以元音字符开头或以'ok'字符串结尾的所有数据:

    mysql> SELECT name FROM person_tbl WHERE name REGEXP '[1]|ok$';


    1. aeiou ↩︎

    艾欧尼亚,昂扬不灭,为了更美好的明天而战(#^.^#)
  • 相关阅读:
    117. 填充每个节点的下一个右侧节点指针 II
    116. 填充每个节点的下一个右侧节点指针
    114. 二叉树展开为链表
    9.5 NLP slide: 第二课 语言模型
    165. 比较版本号
    143. 重排链表
    147. 对链表进行插入
    127. 单词接龙
    129. 求根到叶子节点数字之和
    95. 不同的二叉搜索树 II 递归
  • 原文地址:https://www.cnblogs.com/lovelywcc/p/15149872.html
Copyright © 2011-2022 走看看