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]+$';

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

相关文章

优化MySQL数据库发布系统存储的方法有:1.mysql库主从读写分...
使用mysql的方法:在“我的电脑”→右键→“管理”→“服务”...
在mysql中查看root用户权限的方法:1.命令行启动mysql服务;...
MySQL主从复制是用来备份一个与主数据库一样环境的从数据库,...
运行mysql的方法1.启动mysql服务,在“我的电脑”→右键→“...
开启mysql的方法1.可以通过快捷键win+r,输入cmd,打开窗口,...