基于sql中的多行对数据进行分类

时间:2016-12-14 10:31:48

标签: sql-server-2008

我有一个学生的数据,有各种学习和性能提升。将有4项研究,每个研究的学生的表现数据将基于5天记录。

以下是表格脚本和值的链接。

Data

Script Link

我想以这样一种方式对学生进行分类如果任何两项研究中的表现更差,那么它必须更糟,如果任何3项研究没有改善那么它必须没有改善,否则必须改进

非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

select StudentNumber
        ,case when sum(case when Performance = 'Worsening' then 1 else 0 end) >= 2
                then 'Worsening'
                else case when sum(case when Performance = 'Improvement' then 1 else 0 end) >= 3
                            then 'Improvement'
                            else 'No Improvement'
                            end
                end as Performance
from tbl_student
group by StudentNumber