需求描述
當查詢結果返回大量數據情況下,比如報表查詢。需要按一定條件排序提供分頁呈現數據。
INFORMIX實現方案:Informix 數據庫提供了非常便捷、高效的SQL。
SELECT SKIP M FIRST N FROM TABLENAME WHERE 1=1 ORDER BY COL; SQL應用舉例 原始數據 name course score --------------------------------------- 張三 語文 74 張三 數學 99 張三 物理 93 李四 物理 94 李四 語文 78 李四 數學 84 按成績排名輸出,要求每頁呈現2條記錄。如何利用SQL實現分頁功能: 第一頁: select skip 0 first 2 * from test_rowcols where 1=1 order by score; name course score --------------------------------------- 張三 語文 74 李四 語文 78 第二頁: select skip 2 first 2 * from test_rowcols where 1=1 order by score; name course score --------------------------------------- 張三 物理 85 李四 物理 86 第三頁: select skip 4 first 2 * from test_rowcols where 1=1 order by score; name course score --------------------------------------- 李四 數學 94 張三 數學 99 應用總結,從上面的SQL及數據結果輸出來看,我們只需要在我們的應用程序中控制M,N即可。 說明:M 為第幾頁*每頁記錄數-每頁記錄數;N 為每頁記錄數。