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

テーブル間の差分

    外部結合を試すことができます。たとえば、テーブルfirstにある行を見つけることができます。 ただし、テーブルsecondにはありません このように(テストされていません):

    SELECT first.a, first.b, first.c FROM first LEFT JOIN second USING(a,b,c) 
    WHERE second.a IS NULL
    

    結合により、firstに存在するすべての行を含むテーブルが提供されます 、このように:

    first.a first.b first.c second.a second.b second.c
       a1      b1     c1      NULL      NULL     NULL
       a2      b2     c2       a2       b2       c2
    

    これで、second.a IS NULLの行をクエリするだけで済みます。 secondにない行を検索する 。

    すべての列を結合する必要があるため、パフォーマンスが低下する可能性があります。



    1. Windows8.1のgitbashでMysqlを起動する方法

    2. OracleでのDATEのフォーマット

    3. cx_Oracleを使用して変数をテーブル名にバインドする

    4. MySQLAlterストアドプロシージャ