在一列中组合前5个结果

时间:2018-06-21 13:22:11

标签: sql string-aggregation

我有一张表,可提供以下输出。

enter image description here

我想编写一个查询,该查询给出从上表中获取的前5行的结果(只是col2),然后将它们仅显示为一列,以逗号分隔。

基本上我想要的输出是: enter image description here

您能给我同样的sql查询吗?

1 个答案:

答案 0 :(得分:1)

如果您的数据库是MySQL,请使用:

select group_concat(col2 separator ', ') as str from myTable;

如果您的数据库是Oracle,请使用:

select listagg(col2, ', ') within group (order by col1) as str from myTable;

如果您的数据库是Postgres,请使用:

select string_agg(col2, ',' order by col1) as str from mytable;