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

postgresで複数の値を単一の文字列として収集する方法は?

    テーブルを結合してarray_aggを使用できます カンマで区切られた値を組み合わせる

    SELECT a.id, array_agg(b.name) assignments
    FROM    Project a
            INNER JOIN assignment b
              ON a.id = b.project_ID
    GROUP BY a.id
    

    SQLFiddleデモ

    またはSTRING_AGGを使用します

    SELECT a.id, STRING_AGG(b.name, ', ' ORDER BY b.name) assignments
    FROM    Project a
            INNER JOIN assignment b
              ON a.id = b.project_ID
    GROUP BY a.id
    

    SQLFiddleデモ




    1. 週番号を使用してMySqlで週の最初の日を取得する

    2. phpとmysqlを使用してアーカイブを年と月でグループ化

    3. mysqlで20桁を超える整数が必要な場合はどうすればよいですか?

    4. Symfony2-Doctrine2 QueryBuilder WHEREINManyToManyフィールド