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

dołącz do dwóch różnych tabel i usuń zduplikowane wpisy

Możesz użyć UNION klauzula, UNION sprawdzi duplikaty i zostaną zwrócone tylko odrębne wiersze

SELECT * FROM table1
UNION
SELECT * FROM Table2

Edycja:aby przechowywać dane z obu tabel bez duplikatów, wykonaj następujące czynności

INSERT INTO TABLE1
SELECT * FROM TABLE2 A
WHERE NOT EXISTS (SELECT 1 FROM TABLE1 X 
                  WHERE A.NAME = X.NAME AND 
                  A.post_code = x.post_code)

Spowoduje to wstawienie wierszy z tabeli 2, które nie pasują do nazwy, kodu pocztowego z tabeli 1

Alternatywą jest to, że możesz również utworzyć nowy stół i nie dotykać stołu 1 i stołu 2

CREATE TABLE TABLENAME AS
SELECT * FROM table1
UNION
SELECT * FROM Table2


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Optymalizacja zapytań w PostgreSQL. WYJAŚNIJ podstawy – część 3

  2. Funkcja podobieństwa w Postgresie z pg_trgm

  3. Konwencje nazewnictwa PostgreSQL

  4. Znajdź wiersze z wieloma zduplikowanymi polami za pomocą Active Record, Rails i Postgres

  5. Alternatywy PGTune — konfiguracja ClusterControl PostgreSQL