最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SqlServer2012中LEAD函數(shù)簡單分析

 更新時間:2014年08月26日 10:11:21   投稿:hebedich  
SQL SERVER 2012 T-SQL新增幾個聚合函數(shù): FIRST_VALUE LAST_VALUE LEAD LAG,今天我們首先來簡單分析下LEAD,希望對大家有所幫助,能夠盡快熟悉這個聚合函數(shù)

LEAD函數(shù)簡單點說,就是把下一行的某列數(shù)據(jù)提取到當前行來顯示,看示例更能解釋清楚,先看測試用腳本

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 @TestData

以上是原始數(shù)據(jù),下邊應(yīng)用LEAD函數(shù),看下怎么把其它行的數(shù)據(jù)提取到當前行顯示的

可以看到,LEAD函數(shù)把ID為2的那一行的LastName值提取到第一行顯示為新列NEXTUser,就這么個功能

下邊這個是間隔兩行提取數(shù)據(jù),就是把第三行的數(shù)據(jù)提取到當前行,其它行以次累推,看圖

這個函數(shù)一共接受三個參數(shù),第一個是表達式,以上示例都使用的字段,還可以是其它有效的表達式,第二個參數(shù)是offset,即間隔多少行取數(shù)據(jù),第三個是默認的間隔,即當沒有指定offset時以此為準

舉個例子,以上述代碼為例

LEAD(LastName,2,0)

當沒有指定那個2的時候,則以間隔0行為準,當有指定那個2的時候則間隔2行取數(shù)據(jù),所以,往往第三個參數(shù)可以不指定,效果是一樣的,如下圖

與LEAD函數(shù)相對應(yīng)的還有一個函數(shù),LAG,看下圖效果

如上圖所示,這個函數(shù)是從上行取數(shù)據(jù),其它間隔參數(shù)的意義一樣,LEAD是從下行取數(shù)據(jù),TAG相反是上行取數(shù)據(jù),寫到這里我就再想,如果指定負數(shù),是不是就可以合并為一個函數(shù)了?試下想法:

報錯,offset參數(shù)不能為負,哥不作評論,,,The End

相關(guān)文章

最新評論

香港| 泗水县| 华宁县| 海兴县| 博乐市| 梁山县| 定安县| 嘉禾县| 无为县| 湘阴县| 抚宁县| 旬邑县| 南城县| 松溪县| 岳西县| 佛山市| 彭州市| 武穴市| 蒙山县| 雅江县| 兴安盟| 双辽市| 通化市| 锡林郭勒盟| 平武县| 石屏县| 德钦县| 昆山市| 云南省| 玉屏| 沙河市| 张家界市| 仙游县| 香格里拉县| 长垣县| 丰顺县| 开鲁县| 手游| 民县| 罗源县| 甘南县|