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

同じ列値を持つmysql行を1つの行にグループ化するにはどうすればよいですか?

    GROUP_CONCAT() このように:

     SELECT k.id, GROUP_CONCAT(d.value)
      FROM keywords AS k
      INNER JOIN data as d ON k.id = d.id
      GROUP BY k.id
    

    また、 ORDER BY d.nameを実行する必要がある場合もあります 必要に応じて値の正確な順序を取得します。このように:

     SELECT k.id, GROUP_CONCAT(d.value ORDER BY d.name separator ' ')
      FROM keywords AS k
      INNER JOIN data as d ON k.id = d.id
      GROUP BY k.id
    



    1. カスタムOracleタイプのオブジェクトマッピングを渡そうとしたときに無効な名前パターン

    2. PostgreSQLで文字列をタイムスタンプに変換する方法

    3. JOINのON句で参照されるテーブルの順序は重要ですか?

    4. MariaDBでのTRIM_ORACLE()のしくみ