PostgreSQL 8.4では、array_agg
を明示的に注文することはできません。 ただし、サブクエリを使用してグループ/集計に渡される行を並べ替えることで、この問題を回避できます。
SELECT id, array_to_string(array_agg(image), ',')
FROM (SELECT * FROM test ORDER BY id, rank) x
GROUP BY id;
PostgreSQL 9.0では、集計式にORDER BY
を含めることができます。 条項:
SELECT id, array_to_string(array_agg(image ORDER BY rank), ',')
FROM test
GROUP BY id;