У меня есть таблицаA, в которой столбец PhoneNumber имеет значения, такие как 911234567891. Я хочу удалить первые две цифры с начала, т.е. 1234567891, а затем я хочу изменить его на формат номера телефона xxx-xxx-xxxx, поэтому итоговый результат будет 123-456-7891. Я уже сделал это с помощью seprate Select и Update запрос следующим образом:Удалить первые две цифры и изменить формат phonenumber SQL
SELECT
[Phone Numbers]
,FORMAT([Phone Numbers],'###-###-####') AS [Formatted Phone]
FROM tbl_sample
UPDATE tbl_sample
SET [Phone Numbers] = SUBSTRING([Phone Numbers], 3, 8000)
WHERE [Phone Numbers] LIKE '91%'
Можно ли сделать это с помощью одного запроса на выборку только так, что не будет никакой необходимости обновлять данные в первую очередь? Любая помощь или предложение будут оценены.
Вы можете вместо того, чтобы проверить длину значения из 91%. Что происходит, когда длина составляет всего 10 символов, а код области - что-то вроде 913? –
Если это никогда не будет использоваться для другого региона, тогда все в порядке. Хотя на самом деле * изменение * данные в таблице делают возможным дальнейшее добавление азиатских, европейских, южноамериканских и т. Д. Телефонов очень сложными. – wallyk