尊敬的專家庫/程序員:'followers'和'followings'的數據庫設計?
我有一個MySQL表的用戶信息,如
id user_id name etc.
1 userA
2 userB
3 userC
.. ..
.. ..
我想創建一個像「關注」其他用戶的類似Twitter的功能。用戶A可以關注用戶B,或者用戶B可以關注用戶A,或者兩者都可以關注對方。 爲此,我要創建1臺,可以說追隨者
id user_id follower_id
1 userA userB
2 userC userA
3 userA userC
4 userB userC
5 userX userA
現在我想找到誰是下一個用戶A。我很喜歡: 選擇*從追隨者哪裏user_id = userA 這將選擇userB和userC。那就是我需要的。
現在我想找到,用戶A是下列哪些人(例如,在上表中,用戶A是繼用戶C和用戶X,然後我應該運行與追隨者類似 選擇*其中follower_id =用戶A。
我問題是,這是數據庫設計正確,此問題(考慮到考慮到數據庫冗餘和優化?)也可以有比這更好的辦法?謝謝。
順便說一句,下面的** s **是錯的 – 2018-02-12 18:07:49