作者diamondking (天剑流星)
看板Database
标题Re: [SQL ] 请问前後笔资料相减的问题
时间Wed Nov 7 21:07:13 2007
※ 引述《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