mysql如何获得字段中包含身份证的所有数据

我应该如何写sql能查到字段中包含身份证的所有数据呢?
比如字段名为content,里面的数据可能是 一大段文章,里面插了一个身份证号码。
 例如:我的名字叫小明,我的身份证号是110101199003070310,我喜欢唱跳rap。
 应该怎么写sql,来获得所有包含身份证的数据呢?
 查了下,只知道怎么匹配正则。但是身份证前后有若干数据的情况下怎么获得呢?
 求指点,谢谢。

阅读 444
评论
    4 个回答
    • 10.7k

    只有不设定^$,对正则表达式来说,前后有没有数据没有关系的。

      • 109

      like一下吧
      在数据库操作上搞复杂计算,小孩子过家家呢

      最好数据查出来过滤

        • 145

        mysql 的 regexp 可以使用正则表达式
        content regexp '^.*(\\d{18}|\\d{15}|\\d{17}X).*$'

          • 267

          最好不要这样操作,会严重影响sql的性能

            撰写回答

            登录后参与交流、获取后续更新提醒