PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

PostgreSQL, Zamień dane określonej kolumny w dwóch wierszach

Przykład:zamień numer_dokumentu na identyfikatory 2 i 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;

Wynik:

 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. sqlalchemy wiele kluczy obcych do tej samej tabeli

  2. Jak zainstalować PostgreSQL 9.1 na OSX Lion?

  3. GroupingError:ERROR:kolumna musi występować w klauzuli GROUP BY lub być używana w funkcji agregującej

  4. UPSERT w PostgreSQL przy użyciu jOOQ

  5. Nie można przechowywać znaku Euro we właściwości LOB String za pomocą Hibernate/PostgreSQL