Вы отрицаете свой конфликтующий входной аргумент, который вы установили как true
, но вы ожидали, что not true
приведет к true
?
Просто пропустите отрицание, и вы обновите строку в точности до значения, указанного вами при вставке:
INSERT INTO users_strategies (id_strategy, id_account, active)
VALUES (1, 48, true)
ON CONFLICT (id_strategy, id_account) DO
UPDATE SET active = excluded.active
RETURNING active, risk
;