Re: INSERT ... ON CONFLICT UPDATE/IGNORE 4.0
От | Geoff Winkless |
---|---|
Тема | Re: INSERT ... ON CONFLICT UPDATE/IGNORE 4.0 |
Дата | |
Msg-id | CAEzk6fcyTdhL_gFVdPxXjmOSV_KWW=BucHXGpQVeYn=NY5=X8w@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: INSERT ... ON CONFLICT UPDATE/IGNORE 4.0 (Andres Freund <andres@anarazel.de>) |
Ответы |
Re: INSERT ... ON CONFLICT UPDATE/IGNORE 4.0
|
Список | pgsql-hackers |
So I've committed the patch yesterday evening. I'm pretty sure there'll
be some more minor things to change. But overall I feel good about the
current state.
It'd be quite helpful if others could read the docs, specifically for
insert, and comment whether they're understandable. I've spent a fair
amount of time trying to make them somewhat simpler, but I do think I
only succeeded partially. And there's also my own brand of english to
consider ;)
Omitted only has one m. There's an extra space in "error . (See".
Otherwise it reads fine to me, although I've only skimmed it.
I may have misunderstood: there is only one ON CONFLICT action allowed? I thought the previous version suggested multiple possible targets and actions, this suggests that while there can be multiple targets the action is always the same.
So I thought I could have
INSERT INTO distributors (did, dname)
ON CONFLICT (did) DO UPDATE dname=target.dname
ON CONFLICT (dname) DO NOTHING;
Did I misunderstand?
Finally there's no
INSERT INTO distributors (did, dname)
SELECT did, dname FROM otherdists
ON CONFLICT (did) DO NOTHING;
example (or similar); do we think people will be smart enough to realise that's possible without one?
Geoff
В списке pgsql-hackers по дате отправления: