今天突然翻到為用戶端寫分頁資料的sql,發現其實邏輯不對。清單是按照id降序的
當時這樣寫的:
lastId是臨近id,即上一頁是最上面的id,下一頁是最下面的id
pageSize是頁面條數
顯然,邏輯有問題。
如果pageSize=3;id清單是這樣的:
因為id降序,是以翻頁是這樣的:
但實際上,後端接收三個參數:lastId,pageSize,direct。direct=0表示上一頁,1下一頁。
lastId=9,并向下一頁,則id<9 降序,得8 7 6,沒問題;
上一頁,則id>9,如果隻是降序則取出:14 13 12,顯然應該是升序,即:10 11 12,然後再降序,傳回給用戶端:12 11 10
唯有不斷學習方能改變!
-- <b>Ryan Miao</b>