SQL Server 2012 開窗函數(shù)
廢話不多說(shuō)了,直接給大家貼代碼了,具體代碼如下所示:
-- 開窗函數(shù):在結(jié)果集的基礎(chǔ)上進(jìn)一步處理(聚合操作) -- Over函數(shù),添加一個(gè)字段顯示最大年齡 SELECT * , MAX(StuAge) OVER ( ) MaxStuAge FROM dbo.Student; -- Over函數(shù),添加一個(gè)字段顯示總?cè)藬?shù) SELECT * , COUNT(StuID) OVER ( ) StuCount FROM dbo.Student; -- Partition By 分組統(tǒng)計(jì)數(shù)量 -- 根據(jù)性別分組后,統(tǒng)計(jì) SELECT COUNT(*) OVER ( PARTITION BY StuSex ) , * FROM dbo.Student; -- 根據(jù)班級(jí)分組后,統(tǒng)計(jì)、排序 SELECT COUNT(*) OVER ( PARTITION BY Class ORDER BY Height) , * FROM dbo.Student; -- Over函數(shù),添加一個(gè)字段顯示平均身高 SELECT * , AVG(Height) OVER ( ) AgeHeight FROM dbo.Student; --Row_Rumber() SELECT ROW_NUMBER() OVER ( ORDER BY StuID DESC ) RowNumber , * FROM dbo.Student --Row_Rumber() 實(shí)現(xiàn)分頁(yè)效果 ; WITH T AS ( SELECT ROW_NUMBER() OVER ( ORDER BY StuID DESC ) RowNumber , * FROM dbo.Student ) SELECT * FROM T WHERE T.RowNumber BETWEEN 1 AND 3; --Rank() 排名函數(shù),名次相同,跳過(guò) SELECT RANK() OVER ( ORDER BY Height ) , * FROM dbo.Student; --DENSE_Rank() 排名函數(shù),名次相同不跳過(guò) SELECT DENSE_RANK() OVER ( ORDER BY Height ) , * FROM dbo.Student; -- NTILE()函數(shù),參數(shù):記錄總數(shù)/劃分區(qū)域 = 每個(gè)區(qū)域數(shù)組,把記錄序號(hào)放進(jìn)數(shù)組 (平均分組) SELECT NTILE(3) OVER ( ORDER BY StuSex ) , * FROM dbo.Student;
以上所述是小編給大家介紹的SQL Server 2012 開窗函數(shù),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
sql server 2012 數(shù)據(jù)庫(kù)所有表里查找某字符串的方法
此TSQL語(yǔ)句是針對(duì)SQL Server 2012編寫。如果使用之前版本,需要對(duì)部分語(yǔ)句進(jìn)行重寫。2013-03-03sqlldr裝載數(shù)據(jù)實(shí)現(xiàn)代碼
本文將詳細(xì)介紹如何用sqlldr裝載數(shù),需要了解更多的朋友可以參考下2012-12-12Sql?Prompt?10下載與安裝破解圖文教程(最新推薦)
sql?prompt?10是一款擁有智能提示功能的SQL?Server和VS插件,,特別適合開發(fā)者不大熟悉腳本時(shí)候使用,這篇文章主要介紹了Sql?Prompt?10下載與安裝破解圖文教程,需要的朋友可以參考下2023-03-03一個(gè)統(tǒng)計(jì)表每天的新增行數(shù)及新增存儲(chǔ)空間的功能
這篇文章主要介紹了一個(gè)統(tǒng)計(jì)表每天的新增行數(shù)及新增存儲(chǔ)空間的功能,需要的朋友可以參考下2014-07-07idea連接SQL?Server數(shù)據(jù)庫(kù)的詳細(xì)圖文教程
Idea的還有個(gè)強(qiáng)大之處就是連接數(shù)據(jù)庫(kù),就可以少開一個(gè)數(shù)據(jù)庫(kù)工具了,下面這篇文章主要給大家介紹了關(guān)于idea連接SQL?Server數(shù)據(jù)庫(kù)的詳細(xì)圖文教程,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12SQLSERVER中得到執(zhí)行計(jì)劃的兩種方式
得到執(zhí)行計(jì)劃的方式有兩種:一種是在指令的前面打開一些開關(guān),讓執(zhí)行計(jì)劃信息打在結(jié)果集里,這種方法比較適合在一個(gè)測(cè)試環(huán)境里對(duì)單個(gè)語(yǔ)句調(diào)優(yōu);另一種方法是使用SQL Trace里的事件跟蹤來(lái)跟蹤語(yǔ)句的執(zhí)行計(jì)劃,感興趣的朋友可以了解下2013-01-01刪除sqlserver數(shù)據(jù)庫(kù)日志和沒(méi)有日志的數(shù)據(jù)庫(kù)恢復(fù)辦法
這篇文章主要介紹了刪除sqlserver數(shù)據(jù)庫(kù)日志和沒(méi)有日志的數(shù)據(jù)庫(kù)恢復(fù)辦法,需要的朋友可以參考下2014-06-06t-sql/mssql用命令行導(dǎo)入數(shù)據(jù)腳本的SQL語(yǔ)句示例
這篇文章主要介紹了t-sql或mssql用命令行導(dǎo)入數(shù)據(jù)腳本的SQL語(yǔ)句示例,大家參考使用吧2013-11-11SQL語(yǔ)句刪除2條重復(fù)數(shù)據(jù)一條保留一條
SQL語(yǔ)句2條完全一樣的數(shù)據(jù)刪除一條保留一條,SQL Server 2005 Express 下測(cè)試通過(guò), 僅供參考2012-06-06