基本上,我有一个表格结构,学生可以在其中参加考试。
结构是这样的:
http://www.dropmocks.com/mBj9YX
SELECT s.name AS studentName,
t.name AS testName,
MAX(sc.percentile)
AS percentile,
(CASE WHEN MAX(sc.percentile) > 70 THEN 'passed'
WHEN MAX(sc.percentile) <70 THEN 'fail'
WHEN MAX(sc.percentile) IS NULL THEN 'not taken' END) AS status
FROM Score sc
我不想要的部分在这里:
WHEN MAX(sc.percentile) IS NULL THEN 'not taken' END
如果学生不参加考试,则考试 ID 不会出现在成绩表中。如果他们没有参加考试,我想不出一个会在状态列中添加“未参加”的查询。帮助?前两个有效,但如果测试表中有一个测试 ID 并且学生没有参加该测试,那么该学生的测试 ID 将不会显示在分数表中。我正在尝试找到一种方法来检测它。