我正在做我的高级项目。在线注册系统和网站的迷你版。在假设中,我们希望将教师在一个学期中可以教授的课程数量限制为 3 个。
TblEmployee
包含:emp_ID
(key),can_Teach
(主题的前 4 个字母)。TblCourse
包含:(course_ID
键),course_Type
(主题的前 4 个字母)。TblClass
包含:ClassID
(Key)、emp_ID
(FK)、course_ID
(FK)学期(时间段)
到目前为止,这在选择教授该课程的合适老师方面效果很好:
SELECT *
FROM tblEmployee, tblCourse
WHERE tblEmployee.canTeach = tblCourse.course_Type
AND tblClass.course_ID = ?
但是我想补充一点,从tblClass
if emp_ID (COUNT)
< 3 包括那些并排除大于或等于 3 的那些(即它们不会出现在下拉列表中。
我试过了,但没有用。
SELECT *
FROM tblEmployee, tblCourse
WHERE tblEmployee.canTeach = tblCourse.course_Type
AND tblClass.course_ID = ?
INNER JOIN (SELECT
tblEmployee.emp_ID, tblClass.emp_ID
FROM
tblEmployee, tblClass
GROUP BY
tblClass.emp_ID
HAVING
count(*) < 3 AND tblClass.emp_ID = tblEmployee.emp_ID)
and semester = ?
任何帮助,将不胜感激。