2014-03-06 44 views
1

我想知道如何在任何應用程序中正確實現排序和分頁機制,使用表格顯示一些數據。假設我們有一些具有id和描述的實體。數據庫中有很多它們的實例。我想按說明按字母順序排序。但我想要快速的結果。如果不從數據庫中獲取所有記錄,對它們進行排序,然後只顯示其中的一部分,這樣做可能嗎?從這個問題的角度來看,什麼是最好的?分頁和排序大量的數據

我的問題是相當假設的,並不涉及任何特定的語言或框架。

回答

1

它可以在兩道

第一個只返回id S按什麼標準排序的實體來完成。 id s的列表被保存在內存中。

第二個需要一個頁面,即一個ids的子列表,並從數據庫中提取整個實體以供展示。

+0

假設有數十億個ID或更多,這可能需要一段時間。我想這個問題背後的想法是避免加載(甚至只是部分)所有記錄。 – Dukeling

+0

在單個數據庫中存儲數十億個ID並讓他們有效查詢並不是一件容易的事情。數十億條記錄可能會更好地存儲在多個數據庫中,然後可以並行完成計算。看來這個問題是指單個數據庫。 –

+0

是的。它指的是單個數據庫。事實上,鮑里斯,你的解決方案讓我信服:) – Dawid