我們想介紹一個功能,讓用戶通過他們的Facebook好友查看遊戲結果。當他們第一次註冊我們的遊戲(社交登錄)時,我們目前存儲每個用戶的Facebook uid。我們的MySQL數據庫看起來是這樣的:Facebook好友過濾數據庫記錄的最佳方式是什麼?
用戶
- USER_ID
- facebook_uid
結果
- USER_ID
- 得分
- 結果日期
調用Facebook Graph API,我們可以產生一個逗號分隔列表的朋友uid's。因此,通過Facebook上的朋友來過濾博弈結果的一種方法是:
- 運行使用的好友列表中User.facebook_uid領域的SQL IN子句,然後
- 聯接User.user_id到Result.user_id
我們將對此進行測試,但我擔心使用IN子句的性能影響(朋友列表可能爲300+)。
有沒有人有使用不同方法的經驗?
會喜歡任何見解。謝謝。
很高興聽到IN語句查詢有效地運行。感謝您的建議。我會將結果報告回此主題。 – Bitman 2011-05-27 04:25:19