国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫 - Sql Server - SqlServer 2005 T-SQL Query 學(xué)習(xí)筆記(3)

SqlServer 2005 T-SQL Query 學(xué)習(xí)筆記(3)

2020-06-30 14:48服務(wù)器之家 Sql Server

SqlServer 2005 T-SQL Query 學(xué)習(xí)筆記(3),有需要的朋友可以參考一下。

AD HOC PAGING

就是指用頁面的序號和頁面的大小請求一個單獨的頁面。下面是例子。

DECLARE @pagesize AS INT, @pagenum AS INT;
SET @pagesize = 5;
SET @pagenum = 2;

WITH SalesCTE AS
(
 SELECT ROW_NUMBER() OVER(ORDER BY qty, empid) AS rownum,
  empid, mgrid, qty
 FROM dbo.Sales
)
SELECT rownum, empid, mgrid, qty
FROM SalesCTE
WHERE rownum > @pagesize * (@pagenum-1)
 AND rownum <= @pagesize * @pagenum
ORDER BY rownum;

 
說明:在上個例子中,其實SQL只審視了10行(2*5),也就是說,查看N頁的話,SQL只查到N的頁的數(shù)據(jù),N頁后面的數(shù)據(jù)一概不查看。
 
另外,每當(dāng)移動一頁,都會把這頁放進緩存里,因此每次查詢,就是邏輯查詢(緩存)+物理查詢的過程。物理查詢只需要查詢新請求的頁即可,其他全部在緩存里執(zhí)行,這樣大大加快了查詢速度。
 
 

MULTIPAGE ACCESS:

如果結(jié)果集不是很大,而且分了多個請求頁面,請求也不向前移動,那么這是一個好的方案:首先在一個表里使用ROW_NUMBER具體化所有的頁,然后創(chuàng)建一個群集索引。下面是例子。

 

首先創(chuàng)建按ROW_NUMBER把列編好,

 

SELECT ROW_NUMBER() OVER(ORDER BY qty, empid) AS rownum, empid, mgrid, qty INTO #SalesRN FROM dbo.Sales;

CREATE UNIQUE CLUSTERED INDEX idx_rn ON #SalesRN(rownum);

 

然后直接按ROWNUM查詢,

DECLARE @pagesize AS INT, @pagenum AS INT; SET @pagesize = 5; SET @pagenum = 2; 
SELECT rownum, empid, mgrid, qty FROM #SalesRN WHERE rownum BETWEEN @pagesize * 
(@pagenum-1) + 1 AND @pagesize * @pagenum ORDER BY rownum;

 

RANK & DENSE RANK

這2個函數(shù)和ROW_NUMBER的區(qū)別是:ROW_NUMBER在ORDER BY的條件里有重復(fù)行存在的話,是把這些重復(fù)行也按INDEX排列的,但是RANK和DENSE RANK總是確定的,即只要是ORDER BY重復(fù)的行,他們是統(tǒng)一INDEX的。

 

RANK和DENSE_RANK的區(qū)別是,RANK是如果上級的INDEX和下級的INDEX有可能不是+1關(guān)系,是按下級真正處于列里的位置進行INDEX,而DENSE_RANK是按照跟上級的INDEX+1的關(guān)系進行的編碼。

 

比如:

SELECT empid, qty, RANK() OVER(ORDER BY qty) AS rnk, DENSE_RANK() OVER(ORDER BY qty) AS drnk FROM dbo.Sales ORDER BY qty;
 

NTILE

NTILE的用法和其他的RANK函數(shù)一樣,只不過它可以傳入一個參數(shù),用來決定最大的INDEX是多少:它會按行數(shù)進行除法,然后平均分配行數(shù)進行INDEX的標(biāo)示。

比如,如果有11列,那么首先11/3=3,3列一組作為一個INDEX,然后,11%3=2,這2列會分別加在前面的2組上。

比如,

SELECT empid, qty,
 CASE NTILE(3) OVER(ORDER BY qty, empid)
  WHEN 1 THEN 'low'
  WHEN 2 THEN 'medium'
  WHEN 3 THEN 'high'
 END AS lvl
FROM dbo.Sales
ORDER BY qty, empid;

 

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 欧美一区第一页 | 日韩一区欧美 | 欧美中文一区二区三区 | 日韩欧美精品一区二区三区 | 欧美日韩一级二级三级 | 国产欧美精品一区二区三区 | 激情综合网激情 | 久久精品亚洲一区二区 | 操视频网站 | 日韩欧美国产一区二区 | 欧美成人一区二免费视频软件 | 国产目拍亚洲精品99久久精品 | 国产精品久久久久久久久久新婚 | 五月天婷婷综合 | 日韩小视频在线观看 | 国产精品成人3p一区二区三区 | 亚洲在线一区二区三区 | 国产午夜视频在线观看 | 精品国产一区二区在线 | 欧美精品第一页 | 日本不卡免费一区二区三区综合久久 | 一本色道久久综合狠狠躁篇的优点 | 婷婷国产精品 | 精品国产乱码久久久久久牛牛 | 一区二区三区免费 | 国产精品久久av | 爱色av入口 | 一级做a爰片久久高潮 | 色av网| 久久久99精品免费观看 | 国产美女视频网站 | 一区二区三区免费 | 欧美一区二区在线播放 | 爱色av·com| 亚洲精品视频在线播放 | 99re国产 | 国产欧美一区二区精品性色 | 亚洲第一成年人视频 | 国产一区二区三区免费在线观看 | 一级免费网站 | 国产精品久久国产精品 |