gpt4 book ai didi

mysql - 尝试使用仅在连接成功时适用的 'where' 进行左连接

转载 作者:太空宇宙 更新时间:2023-11-03 11:05:04 25 4
gpt4 key购买 nike

我有文章,存储在 article 表中。有些文章有一张或多张照片,存储在 photo 表中,并指定了 article_id。有些照片已“停用”(photo.active = '0'),不应检索。

我正在尝试为主页获取文章,并为每篇文章获取一张照片,其中包含一张或多张照片。像这样:

SELECT article.id, article.date, article.title, photo.filename_small 
FROM (article)
LEFT JOIN photo ON photo.article_id=article.id
WHERE photo.active = '1'
GROUP BY article.id
ORDER BY article.date desc
LIMIT 10

(“分组依据”是为了让我不会为包含多张照片的文章获得多个结果。这让我觉得很尴尬。)

当我有这样的 WHERE photo.active = '1' 时,我只会得到带有照片的结果,这违背了使连接成为左连接的目的。 where 仅在联接将文章与照片匹配时才相关,但它排除了所有没有事件照片的文章。有什么想法吗?

(是的,有类似的问题,但我已经阅读了很多,但仍在苦苦挣扎。)

最佳答案

尝试类似的东西

SELECT  article.id, 
article.date,
article.title,
photo.filename_small
FROM (article) LEFT JOIN
photo ON photo.article_id=article.id
AND photo.active = '1'
GROUP BY article.id
ORDER BY article.date desc
LIMIT 10

关于mysql - 尝试使用仅在连接成功时适用的 'where' 进行左连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12417807/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com