我有 3 个加入的表,我想编写一个查询,从这些加入的表中返回一些字段。我需要检查一个条件,那就是特定于一个用户的行数。
为了更准确和清晰,我的表格如下所示:
tblTest
------------------------------
TestID | StudentID | TestType
------------------------------
tblTestType
---------------------------
TestType | TestName
---------------------------
tblStudents
-------------------------------
StudentID | StudentName | Sex
-------------------------------
我正在尝试获取第一次通过考试的学生列表(因此,'tblTest' 结果行数应该等于 1,以表明用户刚刚参加了考试并通过了考试,任何数字超过这意味着该学生已多次参加该考试),我的查询如下所示:
SELECT tblStudents.StudentName, COUNT(tblTest.StudentID) AS [Number of Times Exame is Taken], tblTest.TestID
FROM tblTest INNER JOIN
tblTestType ON tblTest.TestID = tblTestType.TestType INNER JOIN
tblStudents ON tblTest.StudentID =tblStudents.StudentID
GROUP BY tblTest.StudentID, tblTest.TestID
HAVING (tblTest.TestID = 1)
哪个失败了。有人可以告诉我这样做的正确方法吗?