code name value
1 aaa 15
2 bbb 18
1 aaa 17
1 aaa 16
I need select items group by code. Result must be:
1 aaa 15,17,16
2 bbb 18
code name value
1 aaa 15
2 bbb 18
1 aaa 17
1 aaa 16
I need select items group by code. Result must be:
1 aaa 15,17,16
2 bbb 18
You need string_agg
as follows:
Select code, name,
String_agg(value,',') within group (order by value) as val
From t
Group by code, name
If you have a maximum of two values, you can use aggregation:
select code, name,
(case when count(*) > 1 then concat(min(value), ',', max(value))
else min(value)
end)
from t
group by code, name;