參考了這裡之後,得知可直接從SQL語法下手,也就是如下的SQL語法:
SELECT TOP @Rows * FROM Table A WHERE A.ID NOT IN ( SELECT TOP ( @Rows * @PageIndex ) ID FROM Table B order by B.ID ) Order by A.ID
@Rows就是每頁要顯示多少筆的資料,@PageIndex就是要抓第幾頁的資料減1,因為第一頁一定是抓最前面N筆,所以ID不可以在B裡面被挑出來,所以就不正確了。
但我對此抱持一個懷疑,當資料量變大的時候是否會有效能問題?用NOT IN會比較消耗資料庫效能,或是如果做好Index就不會有了?反正ID是PK,一定會有Index,是這樣嗎?
沒有留言:
張貼留言