sql >> Databáze >  >> RDS >> PostgreSQL

PostgreSQL vícehodnotové upserts

Vícehodnotový upsert je rozhodně možný a podstatná část toho, proč insert ... on konflikt ... byla implementována.

CREATE TABLE table1(col1 int, col2 text, constraint theconstraint unique(col1));

INSERT INTO table1 VALUES (1, 'parrot'), (4, 'turkey');

INSERT INTO table1 VALUES (1, 'foo'), (2,'bar'), (3,'baz')
ON CONFLICT ON CONSTRAINT theconstraint
DO UPDATE SET col2 = EXCLUDED.col2;

výsledky v

regress=> SELECT * FROM table1 ORDER BY col1;
 col1 | col2 
------+------
    1 | foo
    2 | bar
    3 | baz
    4 | turkey
(4 rows)

Pokud byly dokumenty nejasné, odešlete prosím příslušnou zpětnou vazbu do mailing listu pgsql-general. Nebo ještě lépe navrhněte opravu dokumentů.



  1. Jak opakovat dotaz v Oracle

  2. Postgresql Převést bit měnící se na celé číslo

  3. T-SQL procházení sloupcem dat XML k odvození jedinečné sady cest

  4. Manipulace se SEO Friendly URL s neanglickými znaky