我有一个类似于此的数据库表(但有更多的条目):
PupilId | PeriodId | Assessment
-------------------------------
1 | 10 | 7
1 | 30 | 7
1 | 50 | 7
2 | 20 | 7
3 | 10 | 7
3 | 20 | 8我想找出学生的数量(即不同的PupilId)谁得到了一个给定的评估点,直到并包括一个给定的PeriodId。只应使用给定PeriodId之前或上的最新评估。
例如:
这是的。
非常感谢。
发布于 2014-05-21 19:37:55
好吧,没有答案,这是我从另一个来源得到的帮助:
SELECT COUNT(1)
FROM (
SELECT PupilId AS pupil_id, Max(PeriodId) AS max_period
FROM steph1
WHERE PeriodId <= 100
GROUP BY PupilId
) steph2, steph1
WHERE
PupilId=pupil_id AND
max_period = PeriodId AND
Assessment = 7希望这能在同样的问题上帮助别人。
https://stackoverflow.com/questions/23619862
复制相似问题