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

単一行の値としてコンマ区切り文字を使用してカウント値を取得する方法

    探している関数はGROUP_CONCATです 。ドキュメントを参照してください:

    http://dev.mysql .com / doc / refman / 5.7 / en / group-by-functions.html#function_group-concat

    あなたの例では、もう1つのサブクエリを作成できます(以下の例)。またはJOIN 元のクエリに対する標準的な方法です。

    ...
    (
          SELECT GROUP_CONCAT(gtp.id)
              FROM game_table_players gtp
              LEFT JOIN game_rounds gr ON gr.id = gtp.game_round_id
          WHERE gt.id = gtp.game_table_id
              AND gtp.quit<>1 AND gr.finish=0
    ) AS players,
    ...
    

    NULLのコメントに注意してください GROUP_CONCATでの処理 。プレーヤーがいないときにゼロを表示したい場合は、COALESCE(GROUP_CONCAT(gtp.id), 0)を使用することをお勧めします。 代わりに。




    1. LIKEフィルターでアンダースコア文字を使用するとすべての結果が得られるのはなぜですか?

    2. .NETのOraOLEDBプロバイダーはCLOBフィールドに依存しませんか?

    3. MYSQL結合結果は、where句のIN()中にワイプされた結果を設定しますか?

    4. 新しい列を追加した後にactiveandroidでテーブルを更新する方法