我有一个包含5000行学生和6个科目的表格,包括学生ID和学生姓名。 每个学生都得到了每个科目的成绩.Grades包含A1,A2,B1,B2 n到E。我想得到六个科目中至少有4个科目获得A1或A2的学生名单。 我需要一个SQL查询来获取这些学生的列表 任何帮助,将不胜感激。 谢谢
答案 0 :(得分:0)
这应该这样做:
select * from (select [Student Id], [Student Name], (case when s1 in('A1','A2') then 1 else 0 end +
case when s2 in('A1','A2') then 1 else 0 end +
case when s3 in('A1','A2') then 1 else 0 end +
case when s4 in('A1','A2') then 1 else 0 end +
case when s5 in('A1','A2') then 1 else 0 end +
case when s6 in('A1','A2') then 1 else 0 end ) as [A1A2 Subjects]
FROM [StudentMarks] ) 一个 其中[A1A2主题]> = 4
希望它有所帮助。