SQL Inner объединяет 2 таблицы с несколькими условиями столбцов и обновляет - PullRequest
19 голосов
/ 01 июля 2010

Я использую этот сценарий, пытаюсь объединить 2 таблицы с 3 условиями и обновить T1:

Update T1 set T1.Inci = T2.Inci 
ON T1.Brands = T2.Brands 
AND T1.Category= T2.Category
AND T1.Date = T2.Date

, но я сталкиваюсь:

Incorrect syntax near the keyword 'ON'.

Не могу понять почему.

Ответы [ 3 ]

35 голосов
/ 01 июля 2010
UPDATE
    T1
SET
    T1.Inci = T2.Inci 
FROM
    T1
INNER JOIN
    T2
ON
    T1.Brands = T2.Brands
AND
    T1.Category= T2.Category
AND
    T1.Date = T2.Date
4 голосов
/ 01 июля 2010

Вам нужно сделать

Update table_xpto
set column_xpto = x.xpto_New
    ,column2 = x.column2New
from table_xpto xpto
   inner join table_xptoNew xptoNew ON xpto.bla = xptoNew.Bla
where <clause where>

Если вам нужен лучший ответ, вы можете дать нам больше информации:)

3 голосов
/ 12 февраля 2015
UPDATE T1,T2 
INNER JOIN T1 ON  T1.Brands = T2.Brands
SET 
T1.Inci = T2.Inci
WHERE
    T1.Category= T2.Category
AND
    T1.Date = T2.Date
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...