Добавление символов в строку методом Update в SQL

Всем привет, столкнулся с небольшой проблемой но как оказалось это было только на первый взгляд, в таблицу пользователей в столбец “Телефон”(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

Оставить комментарий


Примечание - Вы можете использовать эти HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>