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

MYSQL UNION DISTINCT

    いいえ。区別する必要のある正確なフィールドを指定することはできません。行全体でのみ機能します。

    問題の時点​​で、クエリをサブクエリにし、外側のGROUP BYにするだけです。 user_id

    SELECT * FROM 
    (SELECT a.user_id,a.updatecontents as city,b.country
    FROM userprofiletemp AS a
    LEFT JOIN userattributes AS b ON a.user_id=b.user_id
    WHERE typeofupdate='city')
    
    UNION DISTINCT
    
    (SELECT a.user_id,c.city,c.country
    FROM userverify AS a
    LEFT JOIN userlogin AS b ON a.user_id=b.user_id
    LEFT JOIN userattributes AS c ON a.user_id=c.user_id
    WHERE b.active=1 AND a.verifycity=0) x
    GROUP BY user_id
    


    1. サブストリングを修正する方法は?

    2. PerconaXtraDBクラスターまたはMariaDBクラスターのクラスター間レプリケーションを構成する方法

    3. str_replaceのみによるSQLインジェクション保護

    4. PostgreSQLを使用して別のテーブルを更新するトリガーを挿入します