Всем привет, столкнулся с небольшой проблемой но как оказалось это было только на первый взгляд, в таблицу пользователей в столбец “Телефон”(tel) понадобилось добавить код города или восьмерку к номеру от сотового. Все номера в таблице были внесены в формате 928-00-00-000 или 918-00-00-000 т.е. без восьмерки
--Работаем с временной таблицей для получения результата
IF OBJECT_ID('tempdb..#tmp') IS NOT NULL DROP TABLE #tmp
select *,'8-'+tel as up into #tmp from partner_tel where tel like '9%'
select * from #tmp
--Первая конструкция которая обновляет данные используя временную таблицу
SET ANSI_WARNINGS OFF
UPDATE
partner_tel
SET
partner_tel.tel=upd.up
FROM
(select * from #tmp) as upd
WHERE
partner_tel.tel=upd.tel
--Второй вариант немного по другому но тоже работает
SET ANSI_WARNINGS OFF
UPDATE
t
SET
t.tel = other_table.up
FROM
partner_tel t
INNER JOIN
#tmp other_table
ON
t.tel = other_table.tel
0 Комментарии。