The following documentation comment has been logged on the website:
Page: https://www.postgresql.org/docs/18/sql-update.html
Description:
There is an example on UPDATE documentation page --
BEGIN;
-- other operations
SAVEPOINT sp1;
INSERT INTO wines VALUES('Chateau Lafite 2003', '24');
-- Assume the above fails because of a unique key violation,
-- so now we issue these commands:
ROLLBACK TO sp1;
UPDATE wines SET stock = stock + 24 WHERE winename = 'Chateau Lafite 2003';
-- continue with other operations, and eventually
COMMIT;
Now we can use INSERT ... ON CONFLICT DO UPDATE command in this case.