我当前有一个表项目(ID)和一个表project_step(ID,项目,步骤(整数))。MySQL链接表获取与table.value分手的最后一行= X
1个项目链接到1个或多个project_step。
我想要得到的项目中最后一个进入project_step(project_step.id DESC)具有阶梯= X.
我需要这样做在子查询的列表,但我不知道如何写下来。
我当前有一个表项目(ID)和一个表project_step(ID,项目,步骤(整数))。MySQL链接表获取与table.value分手的最后一行= X
1个项目链接到1个或多个project_step。
我想要得到的项目中最后一个进入project_step(project_step.id DESC)具有阶梯= 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 = ?
尝试类似这样的东西。
SELECT project.* from project_step
JOIN project ON project.id = project_step.project
GROUP BY project
HAVING SUBSTRING_INDEX(GROUP_CONCAT(step ORDER BY step DESC SEPARATOR ' '), ' ', 1) = X
我现在试一试这个权利,谢谢。我需要10/15分钟,因为这个查询比这个复杂一点;) –
和...它的工作非常感谢你JW(这有点超过了我的SQL技能) –