我有3个表,就像这样(只发布相关信息):
USER:
-----
user_id
POST:
----
post_id
user_id
IMAGE:
----
image_id
post_id
我要做的是,允许用户搜索帖子,他们可以选择帖子结果是否包含图片。
所以它会像:
if ($images_selected) { $SQL_TO_FIND_POSTS_WITH_IMAGES; } else { $SQL_TO_FIND_POSTS_WITHOUT_IMAGES; }
我很难理解如何做到这一点。
无法更改任何表结构,因为它必须是这样的。
答案 0 :(得分:0)
这应该是你的开始
select * from
post pp
join user uu on p.user_id=uu.user_id
left join image mg on mg.post_id=pp.post_id
上面给出了所有帖子,无论图像与否
- 要排除图片,请添加以下内容
where mg.post_id is null
不带表别名的查询
select * from
post
join user on post.user_id=user.user_id
left join image on image.post_id=post.post_id