【发布时间】:2015-04-08 15:20:33
【问题描述】:
我无法确定如何正确使用 Inner Join 并在一个 MySQL 查询中针对多个条件定位其他表。
基本上,我正在为我的网站创建一个小型关注者源,它会输出您关注的任何用户的新帖子。
帖子表:
id | user_id | message | timestamp
如下表:
id | follower_id | following_id
到目前为止我的查询:
SELECT posts.*
FROM posts
INNER JOIN follows
ON posts.user_id = follows.following_id
WHERE follows.follower_id = 1
ORDER BY id DESC limit 10
如何在其中添加条件: 1.) 大于或小于 ID (posts.id) 2.) 指定用户ID为1的也可以发帖(我自己的帖子)
当然,1 将被一个变量替换,因此它对于当前用户会话是动态的。
这里有任何建议,真的被它弄糊涂了。
【问题讨论】:
-
至于 2) 您可以在连接条件 (
ON ...) 中添加任何您想要的条件 - 您可以在此处放置一个OR。 1) 也是如此。您只需从PHP级别向查询添加一个参数。
标签: php mysql select conditional-statements