Postgres heeft geen equivalent geïmplementeerd voor INSERT OR REPLACE . Van de ON CONFLICT docs (nadruk van mij):
Het kan ofwel DO NOTHING zijn, ofwel een DO UPDATE-clausule die de exacte details specificeert. van de UPDATE-actie die moet worden uitgevoerd in geval van een conflict.
Hoewel het u geen afkorting geeft voor vervanging, ON CONFLICT DO UPDATE is meer in het algemeen van toepassing, omdat u hiermee nieuwe waarden kunt instellen op basis van reeds bestaande gegevens. Bijvoorbeeld:
INSERT INTO users (id, level)
VALUES (1, 0)
ON CONFLICT (id) DO UPDATE
SET level = users.level + 1;