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

PostgreSQL, Swap data určitého sloupce ve dvou řádcích

Příklad:vyměňte doc_num za ID 2 a 4:

UPDATE tbl dst
SET doc_num = src.doc_num
FROM tbl src
WHERE dst.id IN(2,4)
AND src.id IN(2,4)
AND dst.id <> src.id -- don't try this at home!
        ;

SELECT * FROm tbl
ORDER BY id;

Výsledek:

 id | doc_num |      doc_text      
----+---------+--------------------
  1 |       1 | First column text1
  2 |       3 | First column text2
  4 |       2 | First column text3
  7 |       4 | First column text4
(4 rows)


  1. Více polí SET pomocí LOAD DATA INFILE pro formát data

  2. Klauzule SQL GROUP BY pro začátečníky

  3. Jak exportovat seznam propojených tabulek do Excelu z Accessu 2016

  4. Geo-Search (vzdálenost) v PHP/MySQL (výkon)