Мне нужна помощь с запросом SQL-сервера. Я пытаюсь обновить существующую таблицу (#Masterfile), основываясь на результатах левого соединения таблицы с другим внешним источником (таблица 2). Строка 6 - это в основном флаг, указывающий, существует ли идентификатор в таблице b или нет. Я новичок в sql (только начал учиться пару недель назад), поэтому мой синтаксис, вероятно, очень простой. Я ушел, присоединившись к #Masterfile с новой представляющей интерес таблицей (Таблица 2), а затем выберите результат (и обновить column6_flag).Обновление таблицы sql с результатами из левого соединения (sql server)
Тем не менее, я получаю ошибку, идентифицирующую оператор (, a.column6_flag = случай, когда x.column9 не является NULL, а затем 1 else 0 end) в качестве виновника. Любая помощь приветствуется!!! Я попробовал снова рассмотреть синтаксис, но не могу определить, почему это приводит к ошибке. Когда я комментирую случай, когда часть запроса, он работает.
Еще раз спасибо!
--Insert into #MasterFile
select distinct
a.column1
, a.column2
, a.column3
, a.column4
, a.column5
, a.column6_flag = case when x.column9 is not NULL then 1 else 0 end
, a.column7
, x.column9
from
#Alldata a
left join
(select m.column9
from #Masterfile m
left join table2 n on m.id = n.id) x on a.id = x.id
Это сработало! Спасибо!!! –
Нет проблем. Я не знаю, почему кто-то проголосовал за это! –