我想在 MySQL 中加入两个表。第一个是目录项表 - 每个项都有一个 item_id 字段。我还有一个与项目(item_id、image_id、内容)关联的图像表。
如何连接这两个表,以便获得所有项目的列表,同时还包含该项目的图像表中的一个元组?
我希望能够生成所有项目的列表,以及一个关联的图像。
我已经尝试过:
SELECT * From items i
JOIN images im
ON im.image_id =
(
SELECT im.image_id
FROM images ci
WHERE ci.item_id = i.item_id
ORDER BY
ci.item_id
LIMIT 1
)
但这仍然只给了我有与之关联的图像的项目...我需要所有项目,无论是否有图像(左外连接?)。
谢谢!!!
最佳答案
您需要左
连接才能获取其他表中不存在匹配项的结果
SELECT i.*, min(im.image_id)
From items i
LEFT OUTER JOIN images im ON im.image_id = i.item_id
GROUP by i.item_id
关于mysql - 将表与表 1 中的所有元组连接起来,但仅连接表 2 中的 1 个匹配元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20443630/