精华内容
下载资源
问答
  • Hive计算日环比 周同比

    千次阅读 2019-12-17 13:58:24
    -- (本周期 - 上周期) / 上周期 select date_time ...,(val-val7)/val7 as `周同比` from ( select date_time ,val ,lag(val,1) over(order by date_time) as val1 ,lag(val,7) over(order b...

    1. 方式一

    在这里插入图片描述

    select
    num                                       -- 数量
    ,( num-num_1ago )/num_1ago                -- 日环比
    ,( num-num_7ago )/num_7ago                -- 周同比
    
    ,concat( round( X/10000,1 ),'万' )        -- 保留一位小数,拼接上万
    ,concat( round( X*100,2 ),'%' )           -- 格式化成百分数
    
    ,lpad( cast( X as string ),5,'0' )        -- 不够5位往左边补充0,支持mysql hive oracle
    ,rpad( cast( X as string ),5,'0' )        -- 不够5位往右边补充0,支持mysql hive oracle
    from A
    
    left join B
    on A.uin = B.uin
    
    left join C
    on A.uin = C.uin
    

    2. 方式二

    在这里插入图片描述

    select
    ds
    ,val
    ,( val-val_1ago )/val_1ago as `日环比`
    ,( val-val_7ago )/val_7ago as `周同比`
    from (
        select
        ds
        ,val
        ,lag( val,1 ) over( order by ds ) as val_1ago
        ,lag( val,7 ) over( order by ds ) as val_7ago
        from t_md_sosomap_user_uin
        where ds = 20210101
    ) tmp
    

    注意: lag表示往上面去N行, 这就要求往上面取7行,必须是LASTDAY_7

    展开全文
  • SQL计算日环比周同比

    千次阅读 2019-11-10 20:43:45
    计算日环比周同比 范例表格如下: 这是面试问到的一个问题,回来学习之后了解可以用这个函数: 代码如下: select date,gmv,(gmv-gmv_1)/gmv_1,(gmv-gmv_7)/gmv_7 from (select date,gmv, lead(gmv,1) over...

    计算日环比、周同比
    范例表格如下:

    这是面试问到的一个问题,回来学习之后了解可以用这个函数:
    计算日活的日环比,周同比:

    代码如下:
    select date,dau,(dau-dau_1)/dau_1,(dau-dau_7)/dau_7
    from
    (select date,dau,
    lead(dau,1) over(order by date desc) as dau_1,
    lead(dau,7) over(order by date desc) as dau_7 from tablename) a

    展开全文
  • java时间计算同比环比周的问题

    千次阅读 2020-03-18 17:16:23
    2、同时需要计算对应的去年同比时间和环比(就是上一个时间段,的2020-03环比就是2020-04)时间, 3、同时还要获取周和月的开始时间和结束时间,比如2020-02的开始是2020-01-06,结束时间是2020-01-12, 4、...

    问题描述:

    在业务中会有传不同日期格式,

    1、有天(2020-02-29),周(2020-03第三周),月(2020-02二月份),

    2、同时需要计算对应的去年同比时间和环比(就是上一个时间段,周的2020-03环比就是2020-04)时间,

    3、同时还要获取周和月的开始时间和结束时间,比如周2020-02的开始是2020-01-06,结束时间是2020-01-12,

    4、周的第一天从周一开始算,周跨年有大于等于四天在今年就算今年最后一周,否则就是明年的第一周

    最麻烦的就是查询周的同比和环比问题,因为涉及跨年和周一是第一天的特殊情况,最后在摸索了一天后学会了java的Calendar工具怎么用了,直接上通用方法。

    下面这个方法是获取同比环比周的第一天日期,第二个方法是把这个日期转换成周格式(xxxx-xx)

        /**
         * 同比环比周, xxxx-xx,
         * @param date 格式必须是xxxx-xx
         * @param type 0是当前
         *             1是同比
         *             2是环比
         */
        public static Date getCompareWeek(String date, int type) {
            int year = Integer.parseInt(date.substring(0, 4));
            int week = Integer.parseInt(date.substring(5, 7));
    
            Calendar cal = Calendar.getInstance();
            cal.setFirstDayOfWeek(Calendar.MONDAY);
            cal.setMinimalDaysInFirstWeek(4);
            cal.set(Calendar.YEAR, year);
            cal.set(Calendar.WEEK_OF_YEAR, week);
            int plus;
            if (type == 1)
                if (week == 53)
                    plus = cal.getWeeksInWeekYear();
                else
                    plus = 52;
            else if (type == 2)
                plus = 1;
            else
                plus = 0;
            cal.add(Calendar.WEEK_OF_YEAR, -plus);
    
            return cal.getTime();
        }
    

    备注:3月21号修改,之前有个bug,因为calendar在判断周的日期的时候会根据当前时间的周时间变化,例如今天周五,同比去年的第五周就会到去年第五周的周五,同理如果是今天是周一也就会到去年第五周的周一,这样有可能会有问题了。具体还是自己试验一下会更清楚一些。例如2021-01的同比和环比周问题

        /**
         * 一周最少四天,每周从周一开始是第一天,获取周格式日期  xxxx-xx
         * @return xxxx-xx
         * @throws ParseException
         */
    
        public static String getCurrentWeekWithYearStartWithMonday(Date dateDesc) {
            Calendar c = Calendar.getInstance();
            c.setTime(dateDesc);
            c.setFirstDayOfWeek(Calendar.MONDAY);
            c.setMinimalDaysInFirstWeek(4);
            Date time = c.getTime();
            int day = c.get(Calendar.DAY_OF_MONTH);
            int week = c.get(Calendar.WEEK_OF_YEAR);
            int year = c.get(Calendar.YEAR);
            if (day > 28 && week == 1) {
                year++;
            } else if (day < 4 && week == getWeeksOfYear(dateDesc)){
                year--;
            }
            return String.format("%04d-%02d", year, week);
        }
    
        public static int getWeeksOfYear(int year) {
            Calendar cal = Calendar.getInstance();
            cal.setFirstDayOfWeek(Calendar.MONDAY);
            cal.setMinimalDaysInFirstWeek(4);
            cal.set(Calendar.YEAR, year);
            return cal.getWeeksInWeekYear();
        }
        public static int getWeeksOfYear(Date date) {
            Calendar cal = Calendar.getInstance();
            cal.setFirstDayOfWeek(Calendar.MONDAY);
            cal.setMinimalDaysInFirstWeek(4);
            cal.setTime(date);
            return cal.getWeeksInWeekYear();
        }
    

    这个是中国标准的日历星期说明,所有定义都是从这里来的。

    展开全文
  • SQL 统计日环比周同比

    万次阅读 2019-03-01 19:12:41
    date gmv 2019-01-01 115.7 2019-01-02 180.1 2019-01-03 296.8 2019-01-04 706.0 2019-01-05 703.5 2019-01-06 527.3 2019-01-07 462.9 ... 2019-01-09...
    dategmv
    2019-01-01115.7
    2019-01-02180.1
    2019-01-03296.8
    2019-01-04706.0
    2019-01-05703.5
    2019-01-06527.3
    2019-01-07462.9
    2019-01-08270.1
    2019-01-0923.3
    2019-01-10346.4
    2019-01-11468.4
    2019-01-12728.1
    2019-01-13841.4
    select date,gmv,(gmv-gmv_1)/gmv_1,(gmv-gmv_7)/gmv_7
    from
    (select date,gmv,
    lead(gmv,1) over(order by date desc) as gmv_1,
    lead(gmv,7) over(order by date desc) as gmv_7 from tablename) a

     

    展开全文
  • dax-自定义同比环比

    千次阅读 2018-07-26 11:21:24
    中国式报表:公司要指定财务月做月度周期,然后还要切分,要做同比环比。查了一些老师的文章和资料,发觉都没有现在要求的这么复杂。于是只好用很笨的办法去写了公式,至少看起来是需求的样子了,后续有没有bug...
  • 20210717-兴业证券-房地产行业新房二手房周报:本周新房销售同比上升环比下降,二手房销售同比下降环比上升.pdf
  • 20210522-兴业证券-房地产行业新房二手房周报:本周新房销售同比提升环比下降,二手房销售同比下降环比提升.pdf
  • 房地产行业新房二手房周报-本周新房销售同比增长,环比下降,二手房销售同环比均下降.rar
  • 20210529-兴业证券-房地产行业新房二手房周报:本周新房销售同环比下降,二手房销售同比下降环比提升.pdf
  • 同比环比

    2021-02-18 14:03:28
    同比环比一、同比环比是什么意思?二、同比环比的计算公式是什么?三、同比环比的区别是什么?四、补充 同比是指上年同期,环比是指本年上期 举例来说,2009.9月,同比是与2008.9月比,环比是与2009.8月比。...
  • 房价的同比环比

    2014-02-07 00:54:51
    所谓环比,简单说就是与相连的上一期相比。如果做的是数据比较,环比就是本周比...与环比对应的,是同比同比,就是与过去某一个大期段中相同序数的小期段进行比较。这么说好像有点复杂,其实举几个例子就明白了,
  • 20210612-兴业证券-房地产行业新房二手房周报:本周新房销售同比提升、环比下降,二手房销售同环比均下降.pdf
  • 20210507-兴业证券-房地产行业新房二手房周报:本周新房销售同比增长,环比下降,二手房销售同环比均下降.pdf
  • 同比环比

    千次阅读 2019-03-04 11:10:20
    我们在分析数据走势时,经常会用到同比环比。 但是,我们却经常将同比环比弄混淆。 那么,到底同比环比的区别是什么?又该如何计算呢? 一丶同比 为了方便理解,我们使用2018年和2017年的数据来进行说明。...
  • MySQL统计同比环比SQL

    万次阅读 2018-03-05 14:23:49
    大体思路:MySQL没有类似oracle方便的统计函数,只能靠自己去硬计算:通过时间字段直接增加年份、月份,然后通过left join关联时间字段去计算环比同比公式即可原始表结构:求同比SQL:-- 按年同比 SELECT t5.*, ...
  • OTHER:环比同比

    2017-12-18 20:00:14
    OTHER:环比同比 month on month year on year
  • sql同比环比 简单示例

    千次阅读 2019-12-12 17:46:58
    SQL同比-简单示例 同比:一般情况下是今年第n月与去年第n月比 创建一个简单的登录活动记录表 drop table if EXISTS logintime; create table logintime ( logincode VARCHAR(10), usercode VARCHAR(10...
  • Java计算同比环比

    千次阅读 2020-12-08 09:59:34
    Java计算同比环比 同比环比计算基本概念和计算公式 同比率:本年数据比上一年数据增长或减少的比率 同比率计算公式:rate = (本年数据 - 前一年数据) / 前一年数据 实例:2020年10月游客数量为80W,2019年10月游客...
  • 电力设备与新能源行业11月第3周报:10月新能源汽车销量同比环比下滑.pdf
  • 汽车行业第19周报:4月重卡销量同比环比大幅上涨,重卡行业维持高景气度.pdf
  • mysql计算同比环比

    2020-05-21 20:50:11
    sql 计算同比环比同比 SELECT t1.now_year AS 年份, t1.now_month AS 月份, CASE WHEN now_month_num IS NULL OR now_month_num = 0 THEN 0 ELSE now_month_num END 本月销售量, CASE WHEN last_month_num IS ...
  • 互联网传媒行业观点:游戏行业Q1同比环比均增长,芒果季风剧场拟5月推出.pdf
  • 汽车第33周报:7月汽车产销同比降幅收窄,预计8月环比增长.pdf
  • 同比和与环比的计算公式

    千次阅读 2015-01-19 13:15:41
    由于采用基期的不同,发展速度可分为同比发展速度、环比发展速度和定基发展速度。简单地说,就是同比、环比与定基比,都可以用百分数或...环比分为日环比、周环比、月环比和年环比。  定基比发展速度,也简称总速度
  • 中泰化工度观点22W15:3月PPI同比环比涨幅扩大,化工行业一季度表现亮眼.pdf
  • 20210703-兴业证券-房地产行业新房二手房周报:本周新房二手房销售同比下降,环比提升.pdf
  • R语言中同比增长和环比增长

    千次阅读 2015-01-22 19:24:30
    同比增长:与上个周期的同一天或者同一个... 下面,以某个论坛的军事科技版本的每日浏览量,来制造一个条形图,并依据上周和本周数据分为两组进行展示,进而分析同比增长与环比增长的区别。原始数据如表(一)所示。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,654
精华内容 661
关键字:

周同比周环比