我的数据库中存储了不同的电话格式,例如:
727.170.4799
1-416-958-6390
1.561.374.4268
(813) 929-5892
Run Code Online (Sandbox Code Playgroud)
此表中大约有约 200 万条记录,因此修改需要很长时间。我需要通过执行电话查找来查找记录。
我控制的一件事是输入,我可以保证它将是数字。但是我不知道他们是否要输入带有或不带有国家/地区代码的数字,因此以这个数字为例,1-416-958-6390
这两个都用于查找:
14169586390
4169586390
Run Code Online (Sandbox Code Playgroud)
应该返回同一行 ( 1-416-958-6390
)
如何尽可能高效地拨打电话号码?
这是我得到的,但它超级慢(正如预期的那样):
select * from patients
WHERE ( REPLACE(phone_number, '-', '') LIKE '%4169586390' )
Run Code Online (Sandbox Code Playgroud) postgresql ×1