在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/數(shù)據(jù)庫/ mongoDB 查詢名次

mongoDB 查詢名次

概述:全國700萬大學生高考成績排名查詢

詳細:一個數(shù)據(jù)表存儲700萬條考生成績數(shù)據(jù),考生通過輸入準考證號即可查詢到總成績以及名次,這個需求怎么最優(yōu)實現(xiàn)?

數(shù)據(jù)表字段:準考證號,語文,數(shù)學,英語,綜合,總分,姓名,學號

回答
編輯回答
誮惜顏

我理解下需求如下:

  1. 查詢只按準考證號查詢;
  2. 準考證是唯一的;
  3. 每次的返回結(jié)果都需要返回總成績和名次;
  4. 成績變化的頻度不高,時間越往后頻度越低;

實現(xiàn)思路:

  • 準考證號建立唯一索引,這樣查詢起來非???,毫秒級別。
  • 單獨寫一個服務,根據(jù)記錄的總成績算出來其所在名次。這種查詢效率最高。維護比較麻煩些。還要考慮成績變了,名次沒變這種不同步的情況。
  • 或者 每次都動態(tài)查詢名次,這種實現(xiàn)簡單、效率也還行(對于700W數(shù)據(jù)來說)。 不會存在成績和名次同步問題。
2017年12月4日 01:06