我想要做的是以下几点:
SELECT
t1.id t1_id, t1.title t1_title, t1.subtitle t1_subtitle, t1.content t1_content,
t2.title t2_title, t2.newfilename t2_newfilename,
t3.picture t3_picture
FROM webcms_cms_content t1
INNER JOIN webcms_cms_downloads t2
ON t1.id = t2.content_id
INNER JOIN webcms_mod_galleries_pictures t3
ON t1.gallery_id = t3.gallery_id
WHERE t1.structure_id =3
AND t1.status=1
AND t1.flag=1
ORDER BY t1.newsdatum DESC, t3.rang ASC
现在的问题是,有时其中一个联接不会返回任何内容,但另一个会返回。因此,如果一个连接没有返回任何内容,我也希望始终获取数据。
更详细地说:
INNER JOIN webcms_cms_downloads t2
ON t1.id = t2.content_id
可能是没有下载,但是下次加入
INNER JOIN webcms_mod_galleries_pictures t3
ON t1.gallery_id = t3.gallery_id
会返回一些东西,所以我想得到那部分。现在它“刹车”并且如果第一个连接为空,则不返回任何内容。
这是否可能仅在一个查询中实现?我该怎么做?
感谢所有建议和帮助!