我已经为此工作了整整两天。我是 Microsoft Access 和整个数据库的新手,实际上我对如何进行查询以确定哪些学生即将毕业感到困惑。我使用聊天 gpt 来获取想法,但它确实没有多大作用(我不确定我是否问了正确的问题)
有关如何创建该查询的任何输入?
我尝试使用 chatGPT 中的 sql 代码,并观看了有关日期/时间的 YouTube 视频,在其中我可以选择特定课程所需的开始日期和结束日期。
我将创建一个子查询来确定每个学生的最后课程结束日期。所需信息完全包含在
STUDENTCOURSE
中。子查询:
SELECT
SC.StudentID,
Max(SC.CourseEndDate) AS LastCourseEndDate
FROM
STUDENTCOURSE AS SC
GROUP BY
SC.StudentID
现在,我们可以将其与
STUDENTINFORMATION
结合起来并添加两个条件:
X.LastCourseEndDate >= Date()
DateDiff("d", Date(), X.LastCourseEndDate) <= 30
,其中 DateDiff("d", d1, d2)
计算两个日期之间的天数。SELECT
X.StudentID,
S.FirstName,
S.LastName,
X.LastCourseEndDate
FROM
(SELECT
SC.StudentID,
Max(SC.CourseEndDate) AS LastCourseEndDate
FROM
STUDENTCOURSE AS SC
GROUP BY
SC.StudentID
) X
INNER JOIN STUDENTINFORMATION AS S
ON X.StudentID = S.StudentID
WHERE
X.LastCourseEndDate >= Date() AND
DateDiff("d", Date(), X.LastCourseEndDate) <= 30
ORDER BY
S.FirstName,
S.LastName