Re: ON CONFLICT DO UPDATE - Mailing list pgsql-general

From tango ward
Subject Re: ON CONFLICT DO UPDATE
Date
Msg-id CAA6wQL+sFc4T=XcHFcuE+4=nZzZkwS+FQm0rWNTuFbwVxtFGJw@mail.gmail.com
Whole thread Raw
In response to Re: ON CONFLICT DO UPDATE  (Alban Hertroys <haramrae@gmail.com>)
List pgsql-general
Yes, that's what I figured out eventually. I thought, only the columns that I declared inside the ON CONFLICT()  parenthesis can be called in SET. My bad.

On Thu, May 10, 2018 at 5:57 PM, Alban Hertroys <haramrae@gmail.com> wrote:

> On 10 May 2018, at 7:13, tango ward <tangoward15@gmail.com> wrote:

>                          ON CONFLICT (school_system_id,
>                                       student_id,
>                                       campus_name
>                                       ) DO UPDATE
>                               SET school_system_id = excluded.school_system_id,
>                                   student_id = excluded.student_id,
>                                   campus_name = excluded.campus_name

I'm pretty sure this ought to read:
        ON CONFLICT (school_system_id, student_id, campus_name)
        DO
           UPDATE SET modified = EXCLUDED.modified,
                balance = EXCLUDED.balance,
                balance_as_of = EXCLUDED.balance_as_of

Instead, you were re-assigning the keys (school_system_id, student_id, campus_name) to the same values again.

Alban Hertroys
--
If you can't see the forest for the trees,
cut the trees and you'll find there is no forest.


pgsql-general by date:

Previous
From: Alban Hertroys
Date:
Subject: Re: ON CONFLICT DO UPDATE
Next
From: Ben Hood
Date:
Subject: Re: Domain based on TIMEZONE WITH TIME ZONE