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

3つのテーブルを持つJOINおよびGROUP_CONCAT

    特に難しいことではありません。

    1. JOIN句を使用して3つのテーブルを結合します。
    2. 関心のあるフィールドでGroup_concatを使用します。
    3. 連結していないフィールドまたは奇妙なフィールドのGROUPBY句を忘れないでください物事が起こります


    SELECT u.id, 
           u.Name, 
           Group_concat(us.id_sport order by pref) sport_ids, 
           Group_concat(s.name order by pref)      sport_names 
    FROM   users u 
           LEFT JOIN User_Sports us 
                   ON u.id = us.id_user 
           LEFT  JOIN sports s 
                   ON US.id_sport = s.id 
    GROUP  BY u.id, 
              u.Name 
    

    デモ

    更新 コメントごとにユーザーがUser_Sportsにエントリを持っていない場合のLEFTJOIN



    1. 毎分cronjob

    2. 日または月の職業に基づいて空室状況を管理する方法

    3. アクティブな接続がある場合にPostgreSQLデータベースを削除するにはどうすればよいですか?

    4. MySQLPHPの日付と時刻フィールドの表示形式を変更します