資料庫分頁 (續)

上一篇中提到像SQL Server、DB2 AS400只能做到Top n,但還是可以透過一些小技巧來變相地達成類似分頁的效果,而不用一股腦地把資料全部抓出來。
以會員列表來說,如果是一頁要顯示20筆資料,按照姓名排序,則可以透過如下的語法:

SELECT TOP 20 ID, CNAME, EMAIL
FROM MEMBERS
WHERE CNAME > 'Yanni'
ORDER BY CNAME

其中的 “Yanni” 這個值則是目前顯示頁中最後一筆資料姓名欄位的值,在按下「下一頁」的同時當成參數傳過去,這樣就可以選出之後的20筆資料了。

不過這個方法就沒辦法實作出「到n頁」的功能了 🙁

作者: yanni

14, Feb 1977

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料