[點晴永久免費OA]SQL標簽記錄法和延遲關(guān)聯(lián)法解決過深分頁問題
我們可以通過減少回表次數(shù)來優(yōu)化。一般有標簽記錄法和延遲關(guān)聯(lián)法。 標簽記錄法 就是標記一下上次查詢到哪一條了,下次再來查的時候,從該條開始往下掃描。就好像看書一樣,上次看到哪里了,你就折疊一下或者夾個書簽,下次來看的時候,直接就翻到啦。 假設(shè)上一次記錄到100000,則SQL可以修改為: select id,name,balance from account where id > 100000 limit 10; 這樣的話,后面無論翻多少頁,性能都會不錯的,因為命中了 延遲關(guān)聯(lián)法 延遲關(guān)聯(lián)法,就是把條件轉(zhuǎn)移到主鍵索引樹,然后減少回表。 假設(shè)原生SQL是這樣的的,其中 select id,name,balance from account where create_time> '2020-09-19' limit 100000,10; 使用延遲關(guān)聯(lián)法優(yōu)化,如下: select acct1.id,acct1.name,acct1.balance from account acct1 INNER JOIN (select a.id from account a where a.create_time > '2020-09-19' limit 100000, 10) AS acct2 on acct1.id= acct2.id; 優(yōu)化思路就是,先通過 該文章在 2023/6/28 16:02:23 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |