2013-03-04 74 views
0

我有一個簡單的排行榜系統。如果需要2個查詢(一個用於獲取表格中得分的位置,另一個用於獲取圍繞它的頁面),那麼如何在用戶分數中集中一頁結果,並有可能在它們之間得到新分數。鎖定桌子是唯一的方法嗎?還是有某種原子方法?如果我在偏移值中嵌入查詢,那是原子嗎?使用SQL在動態環境中尋呼排行榜查詢

回答

1

最簡單的解決方案之一是獲得可見頁面+任何一邊額外的幾個。即使有新的記錄進來,您也應該擁有足夠的數據將UI集中在活動播放器上。

但是,您應該始終做好準備處理沒有足夠的數據來將播放器居中 - 頂部和底部排行榜等

如果玩家根本沒有出現在頁面中,則必須提出另一個或兩個請求。然而,玩家在短時間內(幾秒鐘內完成兩個查詢)就被推出網頁的機率非常低,所以只要用戶界面不掛斷,體驗應該沒問題。

+0

簡單而優雅一如既往的馬特:) – 2013-03-14 18:05:51