我有以下查询返回与用户关联的所有帖子(这很好用)
例如
//friends
wallusers.mem_id IN (".$matches.")
// themselves
OR wallusers.mem_id =".$user_id."
//tagged in
OR wallposts.tagedpersons LIKE '%".$user_id."%'
$qry = "SELECT DISTINCT wallposts.p_id,wallposts.type,wallposts.value,wallposts.media,wallposts.youtube,wallposts.post_type,wallposts.tagedpersons,wallposts.title AS thetitle,wallposts.url,wallposts.description,wallposts.cur_image,wallposts.uip,wallposts.likes,wallposts.userid,wallposts.posted_by,wallposts.post as postdata,wallusers.*, UNIX_TIMESTAMP() - wallposts.date_created AS TimeSpent,wallposts.date_created
FROM wallposts,wallusers
where (wallusers.mem_id IN (".$matches.") OR wallusers.mem_id =".$user_id." OR wallposts.tagedpersons LIKE '%".$user_id."%') and wallusers.mem_id = wallposts.userid
order by wallposts.p_id desc
limit ".$show_more_post.", 10";
我现在想将评论添加到这个查询中,这样如果有人在评论中标记了用户,它就会在这个查询中返回。
这将加入:
wallposts.p_id = wallcomments.post_id
where 子句是:
wallcomments.tagedpersons LIKE '%".$user_id."%'
每个帖子都有多个评论,我正在努力弄清楚如何实现这一点,我会使用 INNER JOIN 吗?
编辑:我只需要查询中的帖子,评论不需要在那里。因此,如果在帖子评论中标记,则在查询中包含帖子。
任何帮助/指导将不胜感激。