繁体   English   中英

查询中的PHP / MySQL查询

[英]PHP / MySQL Query within a query

你好我有一张桌子,里面有学校课程清单。 (schoolcourses)这个表与另一个分配给该课程的教师表(教师)相连接。

到目前为止容易。

复杂的部分在获取教师状态所需的同一查询中。 还有另一个名为course_acceptance_history的表。 因此,当教师被分配课程时,他接受课程。 它会在course_acceptance_history中插入一条记录。

一个insturctor接受,然后拒绝一个课程,然后另一个教练可以接受相同的课程。 换句话说,course_acceptance_history可以为同一课程提供10个条目。

如何在获取所有课程的查询期间从course_acceptance_history中选择课程的MOST RECENT记录?

这是我的查询看起来像但我想我需要一个子查询只从course_acceptance_history中提取该课程的最高ID和教师ID

    SELECT * FROM schoolcourses

INNER JOIN instructors ON schoolcourses.courseinstructor = instructors.instructorsid
INNER JOIN course_acceptance_history ON schoolcourses.schoolcoursesid = course_acceptance_history.courseid

我想我需要合并上面的查询

SELECT * FROM course_acceptance_history WHERE instructorid=$insid AND courseID=$courseID ORDERBY ID DESC
SELECT * FROM schoolcourses
    INNER JOIN instructors ON
        schoolcourses.courseinstructor = instructors.instructorsid
    INNER JOIN course_acceptance_history ON
        schoolcourses.schoolcoursesid = course_acceptance_history.courseid
WHERE course_acceptance_history.id =
    (SELECT id
        FROM course_acceptance_history
        WHERE instructorid=instructors.id
        AND courseID=schoolcourses.schoolcoursesid
        ORDER BY ID DESC
        LIMIT 1)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM