При обновлении данных в таблице1 с inner join
, возвращающим O row updated
, обе таблицы находятся в другой базе данных. У меня есть альтернативный метод для обновления этого, но я не понимаю, почему мой вопрос INNER JOIN
поступил неправильно.запрос обновления с внутренним соединением [обновлено 0 строк]
Не работает с внутренним соединением
UPDATE DB1.table1
SET t1.column3='value3'
from DB1.table1 t1
INNER JOIN DB2.table2 t2 on t1.column2=t2.column2
WHERE (t1.column1 = 'value1')
AND (t2.column3 = 'value3')
Рабочий запрос без использования внутреннего соединения.
UPDATE DB1.table1 SET column3='value3' WHERE (column1 = 'value1')
AND (column3 = 'value3') AND (column2 in (select column2 from DB2.table2
where column3='value3' and column3='value3' and column4='value4'))
DB1..table1
column1 column2 column3 column4
c1 c2 c3a c4
c1 c2 c3a c4
c1 c2 c3b c4
c1 c2 c3b c4
DB2..table2
column1 column2 column3 column4
c1 c2 c3a c4
c1 c2 c3a c4
c1 c2 c3b c4
Может ли любое тело предложить это?
Работаю отлично –