我有两张桌子:
图像包含以下colls:imageID和imagePath。
文章包含:articleID,imageID。
当我知道articleID时,我想使用单个mysql查询获取imagePath数据。
我搜索过类似的问题,但我找不到有用的东西......
答案 0 :(得分:2)
听起来你正在寻找一个JOIN操作。
在单个查询中执行此操作的一种方法(通过多种方式):
SELECT i.imagePath
FROM images i
JOIN articles a
ON a.imageID = i.imageID
WHERE a.article_id = 'foo'
(这不是唯一的方法,有几个其他查询会返回相同的结果。)
请注意,如果images
表中有多个行在imageID
中具有匹配值,则查询将返回多行。如果匹配的行不存在,则查询将返回零行。
OUTER JOIN
操作可用于从articles
返回行,即使images
表中不存在匹配的行也是如此。例如:
SELECT a.articleID
, i.imagePath
FROM articles a
LEFT
JOIN images i
ON i.imageID = a.imageID
WHERE a.article_id = 'foo'