有一张表 
         
            日期(YYYY-MM)   数量
   目标是: 查询出     日期   当月数量  上月数量  同比  环比
   怎么写这个SQL呢?

解决方案 »

  1.   


    select 日期,
           当月数量,
           lag(数量,1,0)over(order by 日期) 上月数量,
           decode(lag(数量,12,0)over(order by 日期),0,当月数量/lag(数量,12,0)over(order by 日期)) as 同比,
           decode(lag(数量,1,0)over(order by 日期),0,当月数量/lag(数量,1,0)over(order by 日期)) as 环比
      from tbale_name;