Вам нужно либо указать имя таблицы, либо EXCLUDED
, чтобы предшествовать полям в предложении WHERE
.
Например, если вы хотите обновить value
только при "новом" zoning_id
и algorithm_value_id
- это 7321 и 61 соответственно:
insert into zoning_algorithm_value (algorithm_value_id, value, zoning_id)
values (61, 21, 7321)
on conflict(algorithm_value_id)
DO
update set value = 21 where EXCLUDED.zoning_id = 7321 and EXCLUDED.algorithm_value_id = 61;
Если вы хотите, чтобы WHERE
ссылался на «существующие» значения записи, используйте имя таблицы.