[b]引言:[/b]
处理流水帐类似记录的时候,可能常遇到“在某个表值上,取首尾记录进行运算”的情况。比如:打卡记录,期末对期初增幅等。因此,笔者向大伙推荐一个oracle的keep语法。
特别地感谢一下oracle群的驴兄和温州·名次兄的指点。
[b]正文:[/b]
直接上样例:
笔者写前百度过,因为网上资料较多(参考,[url=http://www.baidu.com/s?wd=oracle+keep%D3%C3%B7%A8&rsv_bp=0&rsv_spt=3&inputT=4832]oracle keep用法[/url]),不做重复性解释。
处理流水帐类似记录的时候,可能常遇到“在某个表值上,取首尾记录进行运算”的情况。比如:打卡记录,期末对期初增幅等。因此,笔者向大伙推荐一个oracle的keep语法。
特别地感谢一下oracle群的驴兄和温州·名次兄的指点。
[b]正文:[/b]
直接上样例:
select max(t_.dummy) keep(dense_rank first order by t_.code desc) - max(t_.dummy) keep(dense_rank last order by t_.code desc)
from (select 6 as code, 6666 as dummy
from dual
union
select 9 as code, 9999
from dual
union
select 41 as code, 414141 from dual) t_;
笔者写前百度过,因为网上资料较多(参考,[url=http://www.baidu.com/s?wd=oracle+keep%D3%C3%B7%A8&rsv_bp=0&rsv_spt=3&inputT=4832]oracle keep用法[/url]),不做重复性解释。