我目前有一个web应用程序,用户可以在其中共享帖子并与其他用户连接。我每个岗位存储在一个名为“上岗”表和所有表中的所谓的“关系”需要MySQL选择查询帮助
的“上岗”的结构,用户之间的关系是:
+-------------+-----------+---------+------------+----------------+
| post_id | user_id | text | date | privacy |
+-------------+-----------+---------+------------+----------------+
| 1 | 4 | Hello | 1/13/2014 | 2 |
+-------------+-----------+---------+------------+----------------+
Privacy can either be 1 or 2
“关系”的结构是:
+-------------+-----------+------------+------------+
|rel_id | sender | recipient | status |
+-------------+-----------+------------+------------+
| 1 | 17 | 4 | 1 |
+-------------+-----------+------------+------------+
Status can either be 1 or 2
现在,我希望有一个“新闻频道”一样的页面,用户可以看到所有的职位从他们要么朋友(状态= 2)或以下的(状态的人= 1 )。但是我在查询时遇到了问题。我知道如何做简单的选择查询,但我认为这是不可能的。
所以,我想从“posts”表中选择“user_id”与“关系”表中的“收件人”相同的所有帖子,其中发件人等于'17'(我是要使用一个变量)。现在最重要的是,如果来自“关系”的行的状态为“1”,“帖子”行的“隐私”为“2”,则跳过该帖子。
我该如何写这个查询?