sql查询将数据设置为列标题

时间:2011-12-08 21:23:15

标签: sql postgresql pivot

我有一个看似困难的问题!假设我有一个DB表,看起来像这样:

student_id  score
502         0
502         2
502         4
407         3
407         1
407         3
50          2
50          4
50          3

我想要实现的是一个选择语句,它会给我这个:

502  407   50
0    3     2
2    1     4
4    3     3

所以我会在student_id上执行类似select的选项,并将其设置为列标题。然后我想列出每个不同student_id的所有分数。

1 个答案:

答案 0 :(得分:0)

我将把它放在一边,并说它不可能在单个sql语句中执行此操作,其中语句根据表中的内容生成列标题(在本例中为student_id)。看起来你确实需要完整编程语言的强大功能才能完成任务。

我的最终目标是CSV,因此我将从表数据中创建一个CSV,然后编写一个ruby脚本来读取单元格并使用列标题和数据创建一个新的CSV。

相关问题