論壇上常見到文章列表或內文回覆,

都有分頁的功能,

有些是使用Web Server作的,

但如果資料量大的時候Web Server就要Cache一堆資料在Memory,

那麼要改善這方面的事情,就需要在SQL Server裡作分頁.


Mysql作法

Select col1, col2 from table where ... limit start_loc, offset

MSSQL複雜一點點

row_number() ->

select col1, col2

from ( select col1, col2, row_number() over (order by col3) rn from table where ... ) as tmp 

where rn between 11 and 20

top + order by + not in  -> 這方法,會查詢兩次,並不推薦

暫存表 -> 一般不會再程式值皆使用TSql實用這個方式,亦必要Keep Session存在,而且程式碼比較長.
(暫存表使用的是主機記憶體,效率也是不錯的,只是程式習慣上不會如此使用)

文章標籤
全站熱搜
創作者介紹
創作者 abcg5 的頭像
abcg5

Aaron Yang

abcg5 發表在 痞客邦 留言(0) 人氣(64)