SQL - 按字母顺序对列中的字符串进行排序

时间:2017-03-01 03:24:03

标签: postgresql

我正在使用postgresql,我有一个这样的表:

Group | Name
======================================
1     | Mary
2     | Barry,Ann,Peter
3     | Max,Chris
4     | Richard,Mary,Peter,Oliver

该表是一个示例,您可以考虑将有超过10,000个不同的名称,一个组中的最大名称数为4。

我想按字母顺序对每个组中的名称进行排序,结果如下:

Group | Name
======================================
1     | Mary
2     | Ann,Barry,Peter
3     | Chris,Max
4     | Mary,Peter,Oliver,Richard

由于

1 个答案:

答案 0 :(得分:0)

SELECT t.Group, string_agg(n.names, ',' ORDER BY n.names) AS Name
FROM my_table t,
     regexp_split_to_table(t.Name, ',', 'g') n(names)
GROUP BY 1
ORDER BY 1;