sql >> データベース >  >> RDS >> PostgreSQL

2つの異なるテーブルを結合し、重複したエントリを削除します

    UNIONを使用できます 句、UNION 重複をチェックし、個別の行のみが返されます

    SELECT * FROM table1
    UNION
    SELECT * FROM Table2
    

    編集:重複せずに両方のテーブルのデータを保存するには、これを行います

    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)
    

    これにより、名前と一致しないtable2の行、table1の郵便番号が挿入されます

    別の方法として、table1とtable2に触れずに、新しいテーブルを作成することもできます

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


    1. PostgreSQL:PostgreSQLでテーブルを表示する

    2. MySQLdbを使用してカーソルを閉じるタイミング

    3. インデックスが配列の範囲外だった。 (Microsoft.SqlServer.smo)

    4. SQL Serverのパフォーマンス—クラウドでのテスト