1

Twitter クローン Web サイト用に 3 つのデータベースをセットアップしています。

テーブル「ユーザー」:

email | firstname | lastname | hash_password

リンクテーブル「友人」:

email | friend

これにより、すべてのユーザーとその友達が一覧表示されます。友情は一方通行です (Twitter の「フォロー」/「フォロワー」のように)。 friendstable は、すべてのユーザーの友達を一覧表示するリンク テーブルです。したがって、 と の両方friends.userfriends.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;

これは正しく参加しているように見えますが、特定のユーザー (電子メール アドレス) の友人のメッセージのみを取得するにはどうすればよいですか? 現在、これはすべてのメッセージを返すだけです。

ありがとう。

4

1 に答える 1