gpt4 book ai didi

SQL删除具有不同值的重复行,但保留并在单行中显示它们

转载 作者:行者123 更新时间:2023-11-29 12:35:12 26 4
gpt4 key购买 nike

有 8000 行,包括学生姓名、类(class)和成绩。总共有 4 门类(class),所以这意味着每个学生最多有 4 行。所以我想创建一个包含不同学生姓名的表格,并在同一行中显示不同的成绩,如下所示:

enter image description here

非常感谢。

附言。从您最初的回复中我注意到这不是一件容易的事。那么我是否可以只显示成绩超过一年级的学生,因为我对只有一年级的学生不感兴趣?像这样: enter image description here

最佳答案

您可以进行条件聚合:

select name,
max(case when seq = 1 then Course end) as Course1,
max(case when seq = 1 then Grade end) as Course1Grade,
max(case when seq = 2 then Course end) as Course2,
max(case when seq = 2 then Grade end) as Course2Grade,
. . .
from (select *, row_number() over (partition by name order by course) as seq
from table
) t
group by name;

关于SQL删除具有不同值的重复行,但保留并在单行中显示它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50818357/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com