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

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

阅读 4.7k
4 个回答

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

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

最好数据查出来过滤

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

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏