Re: unique constraint violation on multiple-rows update - Mailing list pgsql-general

From Karsten Hilbert
Subject Re: unique constraint violation on multiple-rows update
Date
Msg-id aeTcFzCm4Lz-ARZS@hermes.hilbert.loc
Whole thread
In response to unique constraint violation on multiple-rows update  (Karsten Hilbert <Karsten.Hilbert@gmx.net>)
Responses Re: unique constraint violation on multiple-rows update
List pgsql-general
Am Sun, Apr 19, 2026 at 03:17:07PM +0200 schrieb Karsten Hilbert:

>     WITH cte AS (
>         SELECT pk, list_position
>         FROM clin.export_item
>         WHERE
>             list_position >= _target_position
>         ORDER BY
>             list_position DESC
>     )
>     UPDATE clin.export_item SET
>         list_position = cte.list_position + 1
>     FROM cte
>     WHERE
>         clin.export_item.pk = cte.pk;
>
> Running that does violate the (non-deferred) UNIQUE
> constraint on the table column, however.

Wait, should that UPDATE have been:

     UPDATE clin.export_item SET
         list_position = list_position + 1
     FROM cte
     WHERE
         clin.export_item.pk = cte.pk;

(note the lack of "cte." on the "list_position + 1")

Karsten
--
GPG  40BE 5B0E C98E 1713 AFA6  5BC0 3BEA AC80 7D4F C89B



pgsql-general by date:

Previous
From: Karsten Hilbert
Date:
Subject: unique constraint violation on multiple-rows update
Next
From: Saulo José Benvenutti
Date:
Subject: ANN: storage_engine 1.0.7 – columnar + row-compressed Table Access Methods for PostgreSQL 16-18