我需要选择所有电话号码前缀(0122)并替换为新的数字前缀(072),例如
01220000000至0720000000
但是我的桌子上有许多电话号码格式
('+ 11201220000000','+12201220000000@abc.com'或'01220000000/01220000001')。
我尝试使用REGEXP查找电话号码,格式为^/0122/[0-9]{1,7}$
,但
01220000000/01220000001。
如何使用Mysql通过一个查询更新所有电话号码
答案 0 :(得分:1)
使用REGEXP
似乎步入正轨。这是我对更新的措辞:
UPDATE yourTable
SET phone = REPLACE(CONCAT('072', SUBSTRING(phone, 5)), '/0122', '/072')
WHERE phone REGEXP '^[0+]122';
假设在出现两个数字的情况下,这些数字始终以正斜杠 隔开,则该答案应该有效,只要第二个数字也是候选人。
请注意,您的数据未标准化。字段包含多个电话号码不是很好的数据库设计。