Sqlite replace() 用于替换多个字符

use*_*533 3 sqlite android

我有带有列的数据库表联系人Mobile, officePhone

这里用户将按如下方式保存数据。

mobile=+91 (937) 2582 6433
officephone= (843)-6486-6783
Run Code Online (Sandbox Code Playgroud)

现在我需要检索没有任何特殊字符的电话号码

我如何找到以下查询,

Select REPLACE(mobile,'+','') as mobile , REPLACE(officePhone,'+','') as officePhone from Contacts;
Run Code Online (Sandbox Code Playgroud)

这将仅删除“+”符号,但我想删除所有特殊符号,包括空格。请在这方面帮助我。

wiv*_*vku 5

它不是很漂亮,但您可以嵌套 replace() 函数:

replace(replace(replace(replace(mobile,' ',''),'-',''),'(',''),')','')
Run Code Online (Sandbox Code Playgroud)

同意,如果可能,您可以在 sqlite 之外进行格式化,但这并不总是需要/可能的。例如,我有一个案例,其中 WHERE 部分需要替换。