Redshift provides a function LISTAGG() for what you need
SELECT id, name, LISTAGG(Color,' ') AS Colors
FROM yourtable
GROUP BY id, name
For each group in a query, the LISTAGG aggregate function orders the
rows for that group according to the ORDER BY expression, then
concatenates the values into a single string.
http://docs.aws.amazon.com/redshift/latest/dg/r_LISTAGG.html
SELECT id, name
, LISTAGG(Color,' ') WITHIN GROUP (ORDER BY name) AS Colors
FROM yourtable
GROUP BY id, name
No comments:
Post a Comment