親愛なるデータベースの専門家/プログラマー:「フォロワー」と「フォロー」のデータベース設計ですか?
私は、このような
id user_id name etc.
1 userA
2 userB
3 userC
.. ..
.. ..
として、ユーザー情報とMySQLのテーブルを持っている私は、Twitterのような他のユーザーに何かを「従う」などの機能を作成します。 userAはuserBに従うことができ、userBはuserAに従うことができます。そのために は、私は1つのテーブルを作成する必要があり、フォロワー
id user_id follower_id
1 userA userB
2 userC userA
3 userA userC
4 userB userC
5 userX userA
は、今私はuserAは、次の誰であるか知りたいと言うことができます。私はそうだよ: フォロワーから*を選択user_id = userA これはuserBとuserCを選択する。それだけが必要。
今私はユーザAは、ユーザAは、それから私は信者から 選択*のようなものfollower_id =ユーザAを実行する必要があります。よびUserCとuserXの次され、上記の表では、たとえば(以下されている人物、見つけたい。
マイ質問は(?心データベースの冗長性と最適化に考慮して)この問題に対する正しい、このデータベースの設計であるか、これよりも良いアプローチがあることができますか?一般的には感謝。
次は** ** **間違っています –