mysql如何通过查询父级来获取子级的最小id

时间:2015-09-29 13:07:55

标签: php mysql nested-queries

我有一个名为

的表

editoriale

包含标题和文字内容以及一个表

editoriale_foto

包含前面提到的编辑的图片。

我想查询

" editoriale"

并且还有一个封面图片(输入的第一个也可以 - 所以相对于该社论的最小ID)。

我在查询中迷失了。

我试过这个,但是我得到了很多图像,我只需要一个。

 SELECT e.*,ef.foto FROM editoriale e INNER JOIN editoriale_foto ef ON ef.editoriale = e.id ORDER BY e.id DESC

有什么建议吗?

非常感谢

1 个答案:

答案 0 :(得分:2)

SELECT *
FROM editoriale_foto ef
LEFT JOIN editoriale e ON ef.editoriale = e.id

为您提供完整的照片列表并连接到它们的编辑。

如果您只需要为每个编辑器选择第一张照片,您可以这样做:

SELECT MIN(id)
FROM editoriale_foto
GROUP BY editoriale

所以在结果中你可以使用这个查询:

SELECT *
FROM editoriale_foto ef
LEFT JOIN editoriale e ON ef.editoriale = e.id
WHERE ef.id IN (
    SELECT MIN(id)
    FROM editoriale_foto
    GROUP BY editoriale
)