我想知道讲师在特定年份教授了多少个模块,并希望选择讲师的姓名以及该讲师的模块数量。
问题是因为我正在选择Name
,我必须按名称对其进行分组才能使其正常工作。但如果有两个同名讲师怎么办?然后 sql 会将它们合一,这将是错误的输出。
所以我真正想做的是选择name
但分组依据id
,sql 不允许我这样做。有办法解决吗?
下面是表格:
Lecturer(lecturerID, lecturerName)
Teaches(lecturerID, moduleID, year)
到目前为止,这是我的查询:
SELECT l.lecturerName, COUNT(moduleID) AS NumOfModules
FROM Lecturer l , Teaches t
WHERE l.lecturerID = t.lecturerID
AND year = 2011
GROUP BY l.lecturerName --I want lectureID here, but it doesn't run if I do that
SELECT a.lecturerName, b.NumOfModules
FROM Lecturer a,(
SELECT l.lecturerID, COUNT(moduleID) AS NumOfModules
FROM Lecturer l , Teaches t
WHERE l.lecturerID = t.lecturerID
AND year = 2011
GROUP BY l.lecturerID) b
WHERE a.lecturerID = b.lecturerID
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)