日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 芯聞號 > 充電吧
[導(dǎo)讀]--?開窗函數(shù):在結(jié)果集的基礎(chǔ)上進(jìn)一步處理(聚合操作) SELECT?*?FROM?dbo.Student S#?????????Sname??????Sage??????????????????


--?開窗函數(shù):在結(jié)果集的基礎(chǔ)上進(jìn)一步處理(聚合操作)

SELECT?*?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex
----------?----------?-----------------------?----------
01?????????趙雷?????????1990-01-01?00:00:00.000?男
02?????????錢電?????????1990-12-21?00:00:00.000?男
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男
04?????????李云?????????1990-08-06?00:00:00.000?男
05?????????周梅?????????1991-12-01?00:00:00.000?女
06?????????吳蘭?????????1992-03-01?00:00:00.000?女
07?????????鄭竹?????????1989-07-01?00:00:00.000?女
08?????????王菊?????????1990-01-20?00:00:00.000?女

--?Over函數(shù),添加一個字段顯示最大年齡
SELECT?*,MAX(DATEDIFF(yyyy,Sage,GETDATE()))OVER()?MaxSage?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex???????MaxSage
----------?----------?-----------------------?----------?-----------
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????28
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????28
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????28
04?????????李云?????????1990-08-06?00:00:00.000?男??????????28
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????28
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????28
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????28
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????28
?
--?Over函數(shù),添加一個字段顯示總?cè)藬?shù)
SELECT?*,COUNT(S#)OVER()?總?cè)藬?shù)?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex???????總?cè)藬?shù)
----------?----------?-----------------------?----------?-----------
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????8
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????8
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????8
04?????????李云?????????1990-08-06?00:00:00.000?男??????????8
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????8
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????8
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????8
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????8
?
--?Partition?By?分組統(tǒng)計數(shù)量
--?根據(jù)性別分組后,統(tǒng)計
SELECT?*,COUNT(*)?OVER(PARTITION?BY?Ssex)?總數(shù)?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex???????總數(shù)
----------?----------?-----------------------?----------?-----------
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????4
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????4
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????4
04?????????李云?????????1990-08-06?00:00:00.000?男??????????4
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????4
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????4
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????4
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????4
?
--?根據(jù)性別分組后,統(tǒng)計、排序
SELECT?*,COUNT(*)?OVER(PARTITION?BY?Ssex?ORDER?BY?Sname)?序號?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex???????序號
----------?----------?-----------------------?----------?-----------
04?????????李云?????????1990-08-06?00:00:00.000?男??????????1
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????2
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????3
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????4
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????1
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????2
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????3
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????4
?
--?Over函數(shù),添加一個字段顯示平均年齡
SELECT?*,AVG(DATEDIFF(yyyy,Sage,GETDATE()))OVER()?平均年齡?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex???????平均年齡
----------?----------?-----------------------?----------?-----------
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????26
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????26
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????26
04?????????李云?????????1990-08-06?00:00:00.000?男??????????26
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????26
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????26
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????26
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????26
?
--Row_Rumber()
SELECT?*,ROW_NUMBER()OVER(ORDER?BY?S#?DESC)?序號?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex???????序號
----------?----------?-----------------------?----------?--------------------
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????1
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????2
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????3
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????4
04?????????李云?????????1990-08-06?00:00:00.000?男??????????5
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????6
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????7
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????8
?
--Row_Rumber()?實現(xiàn)分頁效果
WITH?T?AS?(?
????SELECT?ROW_NUMBER()?OVER?(?ORDER?BY?S#?DESC?)?RowNumber?,*
????FROM?dbo.Student
)
SELECT?*?FROM?T?WHERE?T.RowNumber?BETWEEN?1?AND?3

RowNumber????????????S#?????????Sname??????Sage????????????????????Ssex
--------------------?----------?----------?-----------------------?----------
1????????????????????08?????????王菊?????????1990-01-20?00:00:00.000?女
2????????????????????07?????????鄭竹?????????1989-07-01?00:00:00.000?女
3????????????????????06?????????吳蘭?????????1992-03-01?00:00:00.000?女
?
--Rank()?排名函數(shù),名次相同,跳過
SELECT?*,RANK()OVER(ORDER?BY?Ssex)?名次?FROM?dbo.Student
S#?????????Sname??????Sage????????????????????Ssex???????名次
----------?----------?-----------------------?----------?--------------------
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????1
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????1
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????1
04?????????李云?????????1990-08-06?00:00:00.000?男??????????1
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????5
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????5
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????5
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????5
?
--DENSE_Rank()?排名函數(shù),名次相同不跳過
SELECT?*,DENSE_RANK()OVER(ORDER?BY?Ssex)?名次?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex???????名次
----------?----------?-----------------------?----------?--------------------
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????1
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????1
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????1
04?????????李云?????????1990-08-06?00:00:00.000?男??????????1
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????2
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????2
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????2
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????2
?
--?NTILE()函數(shù),參數(shù):記錄總數(shù)/劃分區(qū)域?=?每個區(qū)域數(shù)組,把記錄序號放進(jìn)數(shù)組?(平均分組)
SELECT?*,NTILE(3)OVER(ORDER?BY?Ssex)?區(qū)域?FROM?dbo.Student

S#?????????Sname??????Sage????????????????????Ssex???????區(qū)域
----------?----------?-----------------------?----------?--------------------
01?????????趙雷?????????1990-01-01?00:00:00.000?男??????????1
02?????????錢電?????????1990-12-21?00:00:00.000?男??????????1
03?????????孫風(fēng)?????????1990-05-20?00:00:00.000?男??????????1
04?????????李云?????????1990-08-06?00:00:00.000?男??????????2
05?????????周梅?????????1991-12-01?00:00:00.000?女??????????2
06?????????吳蘭?????????1992-03-01?00:00:00.000?女??????????2
07?????????鄭竹?????????1989-07-01?00:00:00.000?女??????????3
08?????????王菊?????????1990-01-20?00:00:00.000?女??????????3



本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉