私は、ポストのテーブルテーブルとフレンドリストのテーブルを持っています。MYSQLクエリ複数のテーブル条件付きのSQL
Posts:
id | PosterUsername | title | info1 | info2 | etc.
Friends:
user | friend | blocked(boolean)
だから基本的に私は、アクティブなユーザーが友だちとして追加している誰かによって投稿された記事のみを表示できるように、私は結果をフィルタリングすることができ、SQLクエリを探しています。私は基本的に表示して、変数内の友人として、その後、Iループとして「activeUser」を追加したユーザーのリスト全体を保存する方法を考えることができ
SELECT * FROM Posts WHERE
FROM Friends user = PosterUsername AND friend = 'activeUsername' AND BLOCKED = '0'
...のような
何か私はちょうどそれをチェックし、条件を満たすものだけを表示することができる投稿。しかし、私は高度なMYSQLコマンドにはあまり慣れていません、私はそこに良い方法があると推測しています。
更新:
質問:友人関係の双方向ていますか?私がこれを意味するのは、「Friends」テーブルのエントリは、両方の友達が関係にあることを意味するのか、それとも一方的な関係を意味するのでしょうか? –
これを試してみてください: 'SELECTION * FROM POST INNER JOIN Friends ON(Posts.id = Friends.friend)WHERE user = '現在のユーザー' ANDブロック= 0;' –
@TimBiegeleisenこれは一方向の関係になります。それは両方とも可能かもしれませんが、目的はポスターの友人にのみ投稿を表示することです。 –