Как изменить формат отображения телефонного номера в базе? - MySQL
Формулировка задачи:
Здравствуйте друзья.
В базе есть номера мобильных телефонов вида: "8928XXXXXXX" надо перевести их в вид: "8(928)XXX-XX-XX".
Привести в читабельный вид.
Как это сделать запросом на update?
Может есть у кого еще вариант.
Спасибо.
Решение задачи: «Как изменить формат отображения телефонного номера в базе?»
textual
Листинг программы
UPDATE таблица SET новое поле = CONCAT(substr(старое поле с номером, 1, 1), '(', substr(старое поле с номером, 2, 3), ')', substr(старое поле с номером, 5, 3), '-', substr(старое поле с номером, 8, 2), '-', substr(старое поле с номером, 10, 2))
Объяснение кода листинга программы
- Обновление данных в таблице:
UPDATE таблица
- Указание нового поля для создания:
новое поле = CONCAT(substr(старое поле с номером, 1, 1), '(', substr(старое поле с номером, 2, 3), ')', substr(старое поле с номером, 5, 3), '-', substr(старое поле с номером, 8, 2), '-', substr(старое поле с номером, 10, 2))
- Подход к форматированию номера телефона:
substr(старое поле с номером, 1, 1)
- извлечение первой цифры номера.substr(старое поле с номером, 2, 3)
- извлечение следующих трех цифр номера.substr(старое поле с номером, 5, 3)
- извлечение следующих трех цифр номера.substr(старое поле с номером, 8, 2)
- извлечение последних двух цифр номера.substr(старое поле с номером, 10, 2)
- извлечение последних двух цифр номера.CONCAT(substr(старое поле с номером, 1, 1), '(', substr(старое поле с номером, 2, 3), ')', substr(старое поле с номером, 5, 3), '-', substr(старое поле с номером, 8, 2), '-', substr(старое поле с номером, 10, 2))
- объединение всех полученных цифр в одну строку с добавлением скобок и дефисов для форматирования номера телефона.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д