如何不判断同一年进行同比,现在取值有同一年进行同比,取值是0,如何判断

select 

    a.门店,a.年收入,a.年客数,a.年劳动业绩,a.mt 年份,b.mt 上年,

a.年收入/b.年收入 - 1 现金同比,

a.年劳动业绩/b.年劳动业绩 - 1 劳资同比,

a.年客数/b.年客数 - 1 客数同比,

'同比' 类别

    

from 

(select 

    门店,

    date_format(日期, '%Y') mt,

    sum(总收入) 年收入,

sum(实际劳动业绩) 年劳动业绩,

sum(客数) 年客数

from 多店营业汇总表

group by 门店, date_format(日期, '%Y')) a

left join (select 

    门店,

    date_format(日期, '%Y') mt,

    sum(总收入) 年收入,

sum(实际劳动业绩) 年劳动业绩,

sum(客数) 年客数

from 多店营业汇总表

group by 门店, date_format(日期, '%Y')) b

on a.门店 = b.门店

and round((a.年收入-b.mt)/b.mt,2)

where a.门店='${门店}'

yzm257507 发布于 2021-3-27 15:13
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
zsh331Lv8专家互助
发布于2021-3-27 15:41(编辑于 2021-3-27 15:42)

SELECT

a.门店,

a.年收入,

a.年客数,

a.年劳动业绩,

a.mt 年份,

b.mt 上年,

a.年收入 / b.年收入 - 1 现金同比,

a.年劳动业绩 / b.年劳动业绩 - 1 劳资同比,

a.年客数 / b.年客数 - 1 客数同比,

'同比'  类别

FROM

(

SELECT

门店,

date_format(日期, '%Y') mt,

sum(总收入) 年收入,

sum(实际劳动业绩) 年劳动业绩,

sum(客数) 年客数

FROM

多店营业汇总表

GROUP BY

门店,

date_format(日期, '%Y')

) a

LEFT JOIN (

SELECT

门店,

date_format(日期, '%Y') mt,

sum(总收入) 年收入,

sum(实际劳动业绩) 年劳动业绩,

sum(客数) 年客数

FROM

多店营业汇总表

GROUP BY

门店,

date_format(日期, '%Y')

) b ON a.门店 = b.门店  and a.mt = b.mt+1  -- 门店=门店 && a.年份=b.年份+1,这样才能算同比

WHERE

a.门店 = '${门店}'

  • 2关注人数
  • 302浏览人数
  • 最后回答于:2021-3-27 15:42
    请选择关闭问题的原因
    确定 取消
    返回顶部