How can I return multiple rows with the same values into a single row as comma separated and combined in ascendant order in a single column (in SQL server)?
Table2
------------
col1 | col2 | col3
----------------------
1 | line1 | 2
1 | line2 | 1
1 | line3 | 4
2 | line4 | 1
2 | line5 | 3
2 | line6 | 2
3 | line7 | 2
3 | line8 | 1
Desired result in ascendant order according to col3:
Col1 | col2
----------------------------
1 | Line2,Line1,Line3
2 | Line4,Line6,Line5
3 | Line8,Line7
Hopefully this is what you are looking for:
select Col1, string_agg(Col2, ',') within group(order by Col3)
from Table2
group by Col1
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.