我有如下表:
一個和下一個在計算領域的SQL記錄
ID GROUPID oDate oTime Value
1 A 2014-06-01 00:00:00 100
2 A 2014-06-01 01:00:00 200
3 A 2014-06-01 02:00:00 300
4 A 2014-06-01 03:00:00 400
5 A 2014-06-01 04:00:00 0
6 A 2014-06-01 05:00:00 10
7 A 2014-06-01 06:00:00 20
我想有以下結果:
A B C D E F
----------------------------------------------------------------------
1 ID GROUPID oDate oTime Value Result
2 1 A 2014-06-01 00:00:00 100
3 2 A 2014-06-01 01:00:00 200 100
4 3 A 2014-06-01 02:00:00 300 100
5 4 A 2014-06-01 03:00:00 400 100
6 5 A 2014-06-01 04:00:00 0 55
7 6 A 2014-06-01 05:00:00 10 10
8 7 A 2014-06-01 06:00:00 20 10
哪裏Result
公式爲(Excel格式) :
我把公式放在F3單元格上 - >=IF(E3=0, IF(E4=0, 0, (F2+F4)/2), (E3-E2)
如何在SQL語法中執行此操作?有誰知道如何解決這個問題?
謝謝。
找ROW_NUMBER()和OVER()函數從事務SQL – 2014-10-08 06:51:21
喜@GrzegorzGajos,謝謝。我知道我需要使用row_number和over(也許)。但問題是,'結果'字段是計算列。讓我說我把這個列在sql視圖中。 – Haminteu 2014-10-08 06:59:44
你試過'LAG'/'LEAD'嗎? – Recursive 2014-10-08 06:59:56