2014-11-17 4 views
0

У меня есть таблица с именем «контакты» с поля нижеКак заменить все специальные символы и пробелы в столбце таблицы?

id | phone_mobile 

1 | 9988011223 
2 | 00-12-123456 
3 | 91-8876980987 
4 | (91) 88990099777 

Я хочу выберите запрос, который будет возвращать ниже выходной

id | phone_mobile 

1 | 9988011223 
2 | 0012123456 
3 | 918876980987 
4 | 9188990099777 

ответ

3

Для известного набора символов, которые вы можете использовать replace() функцию сцепления что-то в

mysql> select replace(replace(replace('00-12-123456','-',''),'(',''),')',''); 
+----------------------------------------------------------------+ 
| replace(replace(replace('00-12-123456','-',''),'(',''),')','') | 
+----------------------------------------------------------------+ 
| 0012123456              | 
+----------------------------------------------------------------+ 

так что в вашем случае это может быть

select 
id, 
replace(replace(replace(replace(phone_mobile,'-',''),'(',''),')',''),' ','') as phone_mobile 
from table_name 

Если длинный список символов заменен, то лучше использовать уровень приложения для выполнения задания, поскольку цепочка замены становится действительно беспорядочной.

+0

Хорошо спасибо @Abhik. –

Смежные вопросы