oracle如何表示同比的简单介绍

oracle 怎么取上周每天与去年同期每天的同比数,这日期函数应该怎么用,谢谢 。next_day(),last_day(),add_months()这几个函数估计需要用到,还有就是闰年的问题,注意一下就行,可能需要特殊处理
大致过程,首先获取上周每一天的日期 , 然后根据每个日期获取去年的相同日期,具体怎么获?。?自己多试验下,无非是几个函数的组合,不会太难
用PLSQL查询Oracle数据库某字段的本年数 , 上年同期数,同比,怎么写?。浚浚?/h2>很简单的oracle如何表示同比 , 记得给分啊,不给分以后就不给你解答oracle如何表示同比了,你到网上查询一下oracle有个叫lag的内置函数,把结果集排序以后通过lag函数取得相应的位移就知道你的同比和环比的结果了,我看你的结果集中是每月一条记录,则同比是位移12,环比是位移1 。
请教Oracle计算同比和环比sql语句首先明确概念:
环比增长率=(本期数-上期数)/上期数*100% 反映本期比上期增长了多少 。
同比增长率=(本期数-同期数)/同期数*100% 指和去年同期相比较的增长率 。
数据表名:d_temp_data
查询数据如下:
查询的sql语句如下:
select a.*,
nvl(round(money/lag(money) over(order by id)*100,2),'0')||'%' "同比",
nvl(round(money/lag(money) over(partition by mon order by id)*100,2),'0')||'%' "环比"
【oracle如何表示同比的简单介绍】from d_temp_data a
idinameyearmonmoney同比环比
----------------------------------------------------------------------
1 1 飞马股 2013 01 300 0% 0%
2 2 飞马股 2013 02 270 90% 0%
3 3 飞马股 2013 03 350 129.63% 0%
4 4 飞马股 2013 04 180 51.43% 0%
5 5 飞马股 2013 05 500 277.78% 0%
6 6 飞马股 2013 06 400 80% 0%
7 7 飞马股 2014 01 210 52.5% 70%
8 8 飞马股 2014 02 240 114.29% 88.89%
9 9 飞马股 2014 03 320 133.33% 91.43%
10 10 飞马股 2014 04 480 150% 266.67%
11 11 飞马股 2014 05 400 83.33% 80%
生手求教oracle同比和环比sql语句substr(t.salarymonth, -2)) "同比",
sum(t.salary) /
(select sum(t1.salary)
from D_MONTH_SALARY t1
where t1.salarymonth =
to_char(to_date(t.salarymonth, 'yyyymm') - 1, 'yyyymm')) "环比"
from D_MONTH_SALARY t
group by t.salarymonth;
关于oracle如何表示同比和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读