※ 引述《gilba (AK Trilogy)》之銘言:
: ※ 引述《gargamel (Nerding)》之銘言:
: : 先嘴炮一下
: : 1.找出每筆row依日期排序後的前一筆的pk
: : 2.與1.的subquery以pk進行join就能得出兩者的數值
: : 明天再實作看看 @_@
: : *如果能用程式處理, 會簡單得多
: 感謝您的回答
: 我也剛好找到處理方法了 (剛學會自動編號,有問題還請指教)
: 作法如下:
: 已知 Table 中有兩欄資料 date,value
: 假設起始日為 2007/01/01,下一日為2007/01/02
: select b.date, b.value, a.value, b.value-a.value from
: (select rank() over (order by date) No,value
: from Table
: where date >= '2007/01/01') a
: right join
: (select rank() over (order by date) No,date,value
: from Table
: where date >= '2007/01/02') b
: on a.No=b.No
: 結論:我還是用程式處理好了
不需要用程式處理,你可以試試:
select a.date, a.value, b.date, b.value from
(select rank() over (order by date) No, date, value from Table) a,
(select rank() over (order by date) No, date, value from Table) b
where a.No=b.No-1
即可得到你要的資料
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.167.29.163