按PostgresSQL分组

时间:2019-04-09 07:55:53

标签: sql postgresql string-aggregation

我得到以下结果

Student Form ID  | Result
-----------------------------
12               | PASSED
131              | PASSED
131              | RESIT
144              | FAIL
23               | NA

理想情况下,我希望ID相同,例如131。要对结果进行分组,以使ID结果

Student Form ID  | Result
--------------------------------
131              | PASSED, RESIT

当我使用group by时,它没有给我想要的输出,显然我做错了。请提供一些有关如何获得所需结果的指导,即,在ID相同的情况下,结果应分组为一行。

1 个答案:

答案 0 :(得分:0)

您可以在PostgreSQL上使用聚合:array_agg()或json_agg()

select student_form_id, array_agg(result) from your_table group by student_form_id;