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

SQLクエリで4つのテーブルを結合する

    現在のクエリは、すべてのテーブルの場合にのみ結果を一覧表示します お友達のテーブルとのリンクがあります。あなたはこのようなものをもっと探していると思います

    SELECT following
    FROM   friends
    WHERE  follower='id'
    UNION ALL 
    SELECT following
    FROM   family 
    WHERE  follower='id'
    UNION ALL 
    SELECT following
    FROM   following
    WHERE  follower='id'
    UNION ALL 
    SELECT following
    FROM   acquaintances 
    WHERE  follower='id'
    

    または、パフォーマンスを犠牲にして読みやすく、調整しやすい

    SELECT following 
    FROM   (
            SELECT following, follower FROM friends
            UNION ALL SELECT following, follower FROM family 
            UNION ALL SELECT following, follower FROM following
            UNION ALL SELECT following, follower FROM acquaintances 
           ) AS f
    WHERE  follower='id'
    

    ユニオン



    1. 副選択するか、副選択しないか?

    2. MySQLを再起動せずにperformance_schema統計をフラッシュする方法は?

    3. 子を選択するためのmySQLクエリ

    4. SQLServerでALL論理演算子を使用する方法-SQLServer/TSQLチュートリアルパート126