2011-07-27 30 views
1

我不知道是否有人作爲一個好主意或解決方案中使用分頁而不破之前計算的所有記錄計數的所有結果CI笨分頁結果沒有從數據庫

默認CI庫,我們必須設置總數分頁時,我的意思的記錄,這對於大量的記錄來說太大了,你不覺得嗎?

如果我有多於500,000條記錄要分頁怎麼辦?

所以我的想法是嘗試使用somenthing像範圍分頁:

頁1 =>查詢LIMIT 0,10

頁2 =>查詢LIMIT 10,20

,但我發現不少問題:

1)我無論如何都需要統計所有記錄來檢索頁碼 2)如何保存範圍([1,10] [10,20] ...等)?

感謝任何人都可以幫我

+0

它應該自動執行此操作。如果你想手動設置查詢數量,那麼設置你的$ config [num_of_rows] ='500,000'。我的語法可能會關閉,但在pagianation教程中查找。 –

+0

我不認爲分頁會對500,000條記錄有很大幫助。我們的目標是讓數據更易於消化,但有了這麼多的記錄,仍然無法找到您要查找的內容。您可能希望在返回和分頁之前檢索一部分數據。 –

+0

我同意克里斯,做一個搜索和分頁結果。這將使它更加用戶友好 – Rooneyl

回答

1

如果在您使用一個LIMIT讓每一個頁面,然後使用FOUND_ROWS()使用您的解決方案。

它會給你行總數不包括限制。這樣,您不需要兩個查詢,其中第一個檢索特定範圍,另一個檢索總行。

+0

嗨ancide,感謝注意,因爲我想如何在分裂他們之前不計算任何時候數據庫總記錄:P,有任何想法? :P – memento

+0

我不明白你的意思。你甚至嘗試過使用我建議的功能嗎? – rzetterberg

+0

是的,我用過男人:)這真的沒問題,我想要做的是不使用查詢COUNT檢索總記錄:P在500K記錄中會導致真正巨大的數字,所以我試着看着其他一些解決方案用於檢索整個行,像在單個數據庫記錄中保存所有行的總行數一樣...但這對數據庫優化應該不是很好......你的想法是什麼? :P – memento