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

SQLの2つの列を比較するにはどうすればよいですか?

    これが1つの方法です:

    select coalesce(t1.ssn, t2.ssn)
    from t1 full outer join
         t2
         on t1.ssn = t2.ssn
    where t1.ssn is null or t2.ssn is null;
    

    これはほとんどのデータベースで機能しますが、MySQLでは機能しません。以下は、ほとんどすべてのデータベースで機能するはずです。

    select ssn
    from ((select ssn, 't1' as which
           from t1
          ) union all
          (select ssn, 't2' as which
           from t2
          )
         ) t
    group by ssn
    having count(distinct which) = 1
    



    1. OS XElCapitanでのMySQLdbのエラー

    2. 異なるサーバーで実行されている異なるデータベース(MYSQL)の2つのテーブル間でデータを同期する方法

    3. SQL Server 2016のSTRING_SPLIT():フォローアップ#1

    4. お気に入りのパフォーマンスチューニングのトリック