我有辅导老师的资料。我在会话表中按月记录了花在辅导上的时间。我需要知道2006年3月谁的辅导时间最多。
餐桌导师
tutorID
1
2表会话
tutorID Hours Month
1 2 March
1 1 March
2 1 March预期产出:
TutorID
1发布于 2019-07-18 19:33:24
我建议:
select top 1 sum(Hours), tutorID from SESSION where Month like 'March' group by
tutorID order by sum(Hours) DESC发布于 2019-07-18 20:15:21
使用2 CTEs。
第一名将退还每个家庭教师的所有款项。
第二部分将返回第一次cte退还的金额的最大值。
最后,select语句将只返回第一次cte的导师,其小时之和等于第二次cte返回的最大时数。
with
sumcte as (
select tutorID, sum(hours) sumhours
from session
where month = 'March' -- here there should be another condition for the year?
group by tutorID
),
maxcte as (
select max(sumhours) maxhours from sumcte
)
select tutorid from sumcte
where sumhours = (select maxhours from maxcte)https://stackoverflow.com/questions/57101463
复制相似问题