第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何獲得列字段的兩行之間的差異?

如何獲得列字段的兩行之間的差異?

FFIVE 2019-10-28 10:27:04
我有一張這樣的桌子:rowInt  Value2       233       4517      109       0....列的rowInt值是整數(shù),但順序不相同。我可以使用以下sql通過rowInt列出值:SELECT * FROM myTable ORDER BY rowInt;這將按rowInt列出值。如何獲得兩行之間Value的差,結(jié)果如下:rowInt   Value Diff2        23    22    --45-233        45    -35   --10-459        0     -45   --0-4517       10    10    -- 10-0....該表在SQL 2005中(Miscrosoft)
查看完整描述

3 回答

?
慕娘9325324

TA貢獻1783條經(jīng)驗 獲得超4個贊

SELECT rowInt, Value,

       COALESCE(

       (

       SELECT TOP 1 Value

       FROM myTable mi

       WHERE mi.rowInt > m.rowInt

       ORDER BY

             rowInt

       ), 0) - Value AS diff

FROM  myTable m

ORDER BY

      rowInt


查看完整回答
反對 回復 2019-10-28
?
ABOUTYOU

TA貢獻1812條經(jīng)驗 獲得超5個贊

SQL Server 2012及更高版本支持LAG / LEAD函數(shù)來訪問上一行或下一行。SQL Server 2005不支持此功能(在SQL2005中,您需要聯(lián)接或其他方式)。


有關(guān)此數(shù)據(jù)的SQL 2012示例


/* Prepare */

select * into #tmp

from

(

    select 2  as rowint,      23 as Value

    union select 3,       45

    union select 17,      10

    union select 9,       0

) x



/* The SQL 2012 query */

select rowInt, Value, LEAD(value) over (order by rowInt) - Value  

from #tmp

LEAD(value)將返回“ over”子句中給定順序的下一行的值。


查看完整回答
反對 回復 2019-10-28
  • 3 回答
  • 0 關(guān)注
  • 482 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號