我目前有一个表 project(id) 和一个表 project_step (id, project,step(integer))。
1 个项目链接到 1 个或多个 project_step。
我想获得一个项目列表,其中最后输入的 project_step (project_step.id DESC) 有一个 step = X。
我需要在子查询中执行此操作,但我不知道如何编写。
最佳答案
此查询将返回两个表中的所有列。额外子查询的目的是为表 project_step
上的每个 project
分别获取最新的 ID
。
SELECT a.*, b.*
FROM project a
INNER JOIN project_step b
ON a.ID = b.project
INNER JOIN
(
SELECT project, MAX(ID) ID
FROM project_step
GROUP BY project
) c ON b.project = c.project AND
b.ID = c.ID
WHERE b.step = ?
关于MySQL 链接表获取插入的最后一行 table.value = X,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17596489/