Twitter クローン Web サイト用に 3 つのデータベースをセットアップしています。
テーブル「ユーザー」:
email | firstname | lastname | hash_password
リンクテーブル「友人」:
email | friend
これにより、すべてのユーザーとその友達が一覧表示されます。友情は一方通行です (Twitter の「フォロー」/「フォロワー」のように)。
friends
table は、すべてのユーザーの友達を一覧表示するリンク テーブルです。したがって、 と の両方friends.user
がfriends.friend
への外部キーusers.email
です。
テーブル「メッセージ」:
timestamp | user | content
ユーザーとその友人からすべてのメッセージを取得するための SQL クエリは何ですか?
私はもう試した:
SELECT
'timestamp',
user,
content
FROM
messages
INNER JOIN friends ON messages.user = friends.friend
ORDER BY 'timestamp' DESC;
これは正しく参加しているように見えますが、特定のユーザー (電子メール アドレス) の友人のメッセージのみを取得するにはどうすればよいですか? 現在、これはすべてのメッセージを返すだけです。
ありがとう。