MERGE RETURNING
Are there any plans to (or specific decisions not to) support a RETURNING
clause on MERGE statements in future versions of Postgres? The only
reference I could find in the mailing list archives was this comment, which
suggested it was desired but simply not technically feasible at the time.
/messages/by-id/202203161918.qz6phlortw2w@alvherre.pgsql
e.g.
MERGE INTO customer_account ca
USING (SELECT customer_id, transaction_value FROM recent_transactions) AS t
ON t.customer_id = ca.customer_id
WHEN MATCHED THEN
UPDATE SET balance = balance + transaction_value
WHEN NOT MATCHED THEN
INSERT (customer_id, balance)
VALUES (t.customer_id, t.transaction_value)
RETURNING customer_account.*;
On Wed, 23 Nov 2022 at 19:03, Miles Elam <miles.elam@productops.com> wrote:
Are there any plans to (or specific decisions not to) support a RETURNING clause on MERGE statements in future versions of Postgres? The only reference I could find in the mailing list archives was this comment, which suggested it was desired but simply not technically feasible at the time.
/messages/by-id/202203161918.qz6phlortw2w@alvherre.pgsql
e.g.
MERGE INTO customer_account ca
USING (SELECT customer_id, transaction_value FROM recent_transactions) AS t
ON t.customer_id = ca.customer_id
WHEN MATCHED THEN
UPDATE SET balance = balance + transaction_value
WHEN NOT MATCHED THEN
INSERT (customer_id, balance)
VALUES (t.customer_id, t.transaction_value)
RETURNING customer_account.*;
I think the only issue was getting the work done in the time available.
I don't see any problems with that as a feature, but AFAIK there are
no plans for that.
--
Simon Riggs http://www.EnterpriseDB.com/