Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Синтаксис UPDATE  [new]
Аффффторррр
Guest
Наткнулся на такой пример.

UPDATE
Table
SET
Table.col1 = other_table.col1,
Table.col2 = other_table.col2
FROM
Table
INNER JOIN
other_table
ON
Table.id = other_table.id

Немного непонятен данный синтаксис, а именно критерий соединения обновляемой таблицы с выборкой из той же таблицы.
Есть примеры использования UPDATE c FROM ?
14 мар 14, 13:20    [15723475]     Ответить | Цитировать Сообщить модератору
 Re: Синтаксис UPDATE  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Аффффторррр
Есть примеры использования UPDATE c FROM ?
Есть.
В докментации в статье "UPDATE (Transact-SQL)".
14 мар 14, 13:30    [15723556]     Ответить | Цитировать Сообщить модератору
 Re: Синтаксис UPDATE  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381
Аффффторррр,

может, так понятней будет?
UPDATE
 T1
SET
 Table.col1 = other_table.col1,
 Table.col2 = other_table.col2
FROM
 Table as T1
INNER JOIN
 other_table
ON
 T1.id = other_table.id
14 мар 14, 13:31    [15723568]     Ответить | Цитировать Сообщить модератору
 Re: Синтаксис UPDATE  [new]
Аффффторррр
Guest
Так намного понятнее,
т.е. он апдейтит уже тот полученный набор ?

и
UPDATE
Table

как вроде бы связно
с

FROM
Table
INNER JOIN
other_table


так ?

В документации смотрел там вроде просто описана такая возможность.
14 мар 14, 13:42    [15723688]     Ответить | Цитировать Сообщить модератору
 Re: Синтаксис UPDATE  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2396
Аффффторррр
Так намного понятнее,
т.е. он апдейтит уже тот полученный набор ?
ь.

вот выборка
select
 Table.col1 , other_table.col1,
 Table.col2 , other_table.col2
FROM
 Table as T1
INNER JOIN
 other_table
ON
 T1.id = other_table.id


а теперь апдейт T1 на ее основе
UPDATE
 T1
SET
 Table.col1 = other_table.col1,
 Table.col2 = other_table.col2
FROM
 Table as T1
INNER JOIN
 other_table
ON
 T1.id = other_table.id
14 мар 14, 13:59    [15723899]     Ответить | Цитировать Сообщить модератору
 Re: Синтаксис UPDATE  [new]
iap
Member

Откуда: Москва
Сообщений: 47001
daw
Аффффторррр,

может, так понятней будет?
UPDATE
 T1
SET
 Table.col1 = other_table.col1,
 Table.col2 = other_table.col2
FROM
 Table as T1
INNER JOIN
 other_table
ON
 T1.id = other_table.id
В SET надо бы тоже алиас слева писать...
14 мар 14, 14:05    [15723957]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить