分頁的幾種方法

2021-08-01 14:24:48 字數 748 閱讀 9096

1:top分頁法 

缺點:資料量越大效率越慢

2:between 1 and 5 

select * from  表名  where 表id  between 6 and  10

id不連續是有問題的

3: row_number函式分頁 ,

select row_number() over (order by id) as rownum,* from 表名where 表id between 6 and  10

查詢行號,  集合在一起查詢 解決了用between 分頁id不連續的問題  

sql包裹:把一次查詢的結果,作用另外一次查詢的表

4:記憶體分頁

一次查詢全表,放入記憶體,分頁直接請求記憶體    效率非常快,快取

缺點:佔記憶體

5:offset ,sqlserver2012開始支援

6:  儲存過程分頁 

ø開始位置與結束位置計算

第一頁:page=1  , rows=5

開始位置:  (page-1)*rows +1 = (1-1)*5+1 = 1

結束位置: page*rows = 1*5= 5

第二頁:page=2  , rows=5

開始位置:  (page-1)*rows +1 =(2-1)*5+1 = 6

結束位置: page*rows = 1*5= 2*5 = 10

TIdTCPClient的幾種方法

其實indy比較簡單,但是可以提供的方法太多了。我找了很久,才搞明白。比方說這個讀取緩衝區的資料,就有很多種方法。相對於ttcpclient的幾種方法來說,tidtcpclient確實提供了多種選擇,不仔細研究真的容易糊塗 其實我比較喜歡用currentreadbuffer 1 readfromst...

排序的幾種方法

三種排序 選擇排序,氣泡排序,插入排序 的總結 1.選擇排序 1 public class demo3 遍歷排序前的數值 for int i 0 i num.length 1 i 如果最小值的標號未改變,代表本身已是最小值,否則交換數值 if min i 遍歷排序後的數值 for int i 0 i...

排序的幾種方法

三種排序 選擇排序,氣泡排序,插入排序 的總結 1.選擇排序 1 public class demo3 遍歷排序前的數值 for int i 0 i num.length 1 i 如果最小值的標號未改變,代表本身已是最小值,否則交換數值 if min i 遍歷排序後的數值 for int i 0 i...