Попробуйте удалить ссылку в предложении from
:
update t1
set some_flag = (case when b.some_value is null then false else true end)
from t2 b
where t1.code = b.code;
Postgres (и базы данных, производные от Postgres) допускают предложение FROM
для UPDATE
.Однако ссылки на таблицы в дополнение к ссылочной таблице в UPDATE
.Это отличается от SQL Server, где предполагается, что ссылка на таблицу в UPDATE
взята из предложения FROM
, если возможно, даже игнорируя псевдоним при необходимости.
Вы должны быть в состоянии упростить это до:
update t1
set some_flag = (b.some_value is not null);
from t2 b
where t1.code = b.code;