Есть ли в Postgres простой способ сделать следующее в sqlite?
INSERT INTO foo (x, y, z) VALUES (1, 2, 3) ON CONFLICT replace;
Я осмотрелся и нашел решения, которые представляют собой сложные пользовательские функции. Другое решение моей проблемы - просто сделать
delete from foo where x=1; INSERT INTO foo (x, y, z) VALUES (1, 2, 3) ON CONFLICT replace;
, который не является семантически эквивалентным, но работает для моего случая.
Я бы предпочел правило ON CONFLICT
, если оно не требует пользовательских функций.