[MSSQL2012]CUME_DIST函數

CUME_DIST函數以某列做爲基準,計算其它行相對於基準行數據的比例、差距比例,比較容易理解app

先看下測試數據函數

DECLARE @TestData TABLE(
    ID INT IDENTITY(1,1),
    Department VARCHAR(20),
    LastName VARCHAR(20),
    Rate FLOAT
)
INSERT INTO @TestData(Department,LastName,Rate)
SELECT 'Document Control','Arifin',17.7885 UNION ALL
SELECT 'Document Control','Norred',16.8269 UNION ALL
SELECT 'Document Control','Kharatishvili',16.8269 UNION ALL
SELECT 'Information Services','Chai',10.25 UNION ALL
SELECT 'Information Services','Berge',10.25 UNION ALL
SELECT 'Information Services','Trenary',50.4808 UNION ALL
SELECT 'Information Services','Conroy',39.6635 UNION ALL
SELECT 'Information Services','Ajenstat',38.4615 UNION ALL
SELECT 'Information Services','Wilson',38.4615 UNION ALL
SELECT 'Information Services','Connelly',32.4519 UNION ALL
SELECT 'Information Services','Meyyappan',32.4519 測試

SELECT * FROM @TestDataorm

CUME_DIST

 

第一個例子,代碼比較簡單,結果集裏出來的一列Cume_Distblog

image

 

第二個例子,與例1不一樣的是添加了分組,CUME_DIST被應用到每一個組內,即每一個組內有一個本身的基準,組內其它成員參照此基準進行運算get

image

 

還有一個相似的函數,PERCENT_RANK,先猜猜這個函數作什麼用?it

相關文章
相關標籤/搜索