Обсуждение: Feature Request: insert/on conflict update status

Поиск
Список
Период
Сортировка

Feature Request: insert/on conflict update status

От
Roby
Дата:
Hi all,

Following a recent bug report (https://www.postgresql.org/message-id/20190725015448.e5a3rwa22kpnzfe3%40alap3.anarazel.de) it was suggested that that I submit a feature request for the ability to test whether an (insert / on conflict update) "upsert" resulted in an insert or an update.

I am currently testing if xmax = 0 to achieve this however I understand this is not reliable.

An excerpt follows - I am performing bulk data maintenance, hence the insert into/select from. The "returning" clause would ideally reference something more reliable than xmax.

insert into test_table (test_id, test_code, test_name)
select test_code, test_name
from bulk_test_data
on conflict (test_code) do update
set test_name = test_name_in
where test_table.test_name is distinct from excluded.test_name
returning test_id, case when (xmax = 0)::boolean as inserted

Regards,
Roby.