MySQL REGEXP – 删除空格和非数字字符

我想在MySQL数据库中搜索电话号码.

目前有这个查询:

SELECT person FROM people WHERE phone_number RLIKE '123456789'

它不会发现:

(123) 456 789
(12) 456789
123 456 789
etc etc

在我的MySQL查询中是否可以删除所有内容并留下数字?

我还想搜索删除所有空格,只留下数字和字符,还删除所有字符,只留下数字和空格.不知道这一切是多么容易.

感谢您的帮助!

最佳答案
怎么样:

SELECT
    person,replace(replace(replace(replace(phone_number,' ',''),'(',')','-','') as phone_number
FROM
    people
WHERE
    phone_number RLIKE '^[+]?[-() 0-9]+$';

匹配以加号开头的数字,它们可能包含连字符,括号和空格.但除了一开始就没有加号.也没有人物.还删除了连字符,空格和括号.

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。