Обновление Inner Join в MS SQL Server отличается от MySQL? - PullRequest
0 голосов
/ 01 февраля 2019

Я пытаюсь заполнить столбец в таблице A из данных в таблице B на основе уникального идентификатора (только для соответствующих записей. Я только начал использовать MS SQL Server после использования MySQL в течение 4 лет. В MySQL это было быпо сути, будьте:

update TableA a
inner join TableB b
on a.IDColumn = b.IDColumn
set a.ColumnIWant = b.ColumnIWant

Я пробовал несколько различных вариантов этого, но ни один из них не работает ... Синтаксис сильно отличается в MS SQL Server Management Studio? Можно ли использовать псевдонимы?Любая помощь будет принята с благодарностью.

update TableA a
inner join TableB b
on a.IDColumn = b.IDColumn
set a.ColumnIWant = b.ColumnIWant

Ответы [ 2 ]

0 голосов
/ 01 февраля 2019
update a
set a.ColumnIWant = b.ColumIWant
from TableA a
inner join TableB b
on a.IDColumn = b.IDColumn
0 голосов
/ 01 февраля 2019

Вы не можете напрямую присоединиться к таблице обновлений.Синтаксис

Update tableA
Set x = y
From tableA
Join tableB ...
Where ...
...