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

當(dāng)前位置:首頁(yè) > 芯聞號(hào) > 充電吧
[導(dǎo)讀]LEAD函數(shù)簡(jiǎn)單點(diǎn)說(shuō),就是把下一行的某列數(shù)據(jù)提取到當(dāng)前行來(lái)顯示,看示例更能解釋清楚,先看測(cè)試用腳本DECLARE?@TestData?TABLE(? ??ID?INT?IDENTITY(1,1),?

LEAD函數(shù)簡(jiǎn)單點(diǎn)說(shuō),就是把下一行的某列數(shù)據(jù)提取到當(dāng)前行來(lái)顯示,看示例更能解釋清楚,先看測(cè)試用腳本

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ù)提取到當(dāng)前行顯示的

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

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

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

舉個(gè)例子,以上述代碼為例

LEAD(LastName,2,0)

當(dāng)沒(méi)有指定那個(gè)2的時(shí)候,則以間隔0行為準(zhǔn),當(dāng)有指定那個(gè)2的時(shí)候則間隔2行取數(shù)據(jù),所以,往往第三個(gè)參數(shù)可以不指定,效果是一樣的,如下圖

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

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

報(bào)錯(cuò),offset參數(shù)不能為負(fù),哥不作評(píng)論,,,The End


sql server 中 使用lead() over()函數(shù)報(bào)錯(cuò):lead不可以識(shí)別的內(nèi)置函數(shù)

LEAD(),OVER():ANSI SQL 2008 standard:關(guān)鍵是要ANSI的

SQL server中SQL分析函數(shù)問(wèn)題

SQL SERVER 2005以上也有分析函數(shù)的,如果是2000,必須有一個(gè)參照列,類(lèi)似id之類(lèi)的,
要看具體表結(jié)構(gòu)

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