按月、按周列举统计最近10个月 10周的数据计算

10个月的数据统计 

select a.f_year,a.f_month 
, Convert(decimal(5,2),100-100*numQualified/nullif(numFeed,0)) KpiUnqualified
, Convert(decimal(5,2),numQualified/nullif((timeProduction/60),0)/nullif(theoryUPH,0)) KpiOEE 
, Convert(decimal(5,2),100*numQualified/nullif( numPlanned ,0)) KpiPlanRate
, Convert(decimal(5,2),100*numWasteMater/nullif( numFeed ,0))KpiWasteMater
, Convert(decimal(5,2),numQualified/nullif((timeProduction/60),0)) KpiUPH
, Convert(decimal(5,2),numQualified/nullif((timeProduction/60),0)/nullif(numWorkers,0)) KpiUPPH
, Convert(decimal(5,2),100*numWorkWaste/nullif((numFeed-numWasteMater),0))  KpiWasteRate
--,b.targetUnqualified,b.numWasteOther,b.targetOEE,b.targetPlanRate,b.targetWasteMater,b.numPlanned,b.numQualified,b.numWasteMater,b.numWorkWaste,b.targetUPH,b.timeProduction,b.numWorkers,b.theoryUPH,b.numFeed,b.targetUPPH,b.targetWasteRate
 from (select year(F_MonthDay) f_year,month(F_MonthDay) f_month from (
SELECT  DATEADD(mm,number,dateadd(mm,-9,getdate()))  AS F_MonthDay   FROM master..spt_values WHERE TYPE = 'P' AND DATEADD(mm,number,dateadd(mm,-9,getdate())) <= getdate() )c  )a
 left join 
 (select  year(F_DataDate) f_year,month(F_DataDate) f_month
,sum(CASE F_TagCode WHEN 'targetUnqualified' THEN f_value ELSE 0 END) targetUnqualified
,sum(CASE F_TagCode WHEN 'numWasteOther' THEN f_value ELSE 0 END) numWasteOther
,sum(CASE F_TagCode WHEN 'targetOEE' THEN f_value ELSE 0 END) targetOEE
,sum(CASE F_TagCode WHEN 'targetPlanRate' THEN f_value ELSE 0 END) targetPlanRate
,sum(CASE F_TagCode WHEN 'targetWasteMater' THEN f_value ELSE 0 END) targetWasteMater
,sum(CASE F_TagCode WHEN 'numPlanned' THEN f_value ELSE 0 END) numPlanned
,sum(CASE F_TagCode WHEN 'numQualified' THEN f_value ELSE 0 END) numQualified
,sum(CASE F_TagCode WHEN 'numWasteMater' THEN f_value ELSE 0 END) numWasteMater
,sum(CASE F_TagCode WHEN 'numWorkWaste' THEN f_value ELSE 0 END) numWorkWaste
,sum(CASE F_TagCode WHEN 'targetUPH' THEN f_value ELSE 0 END) targetUPH
,sum(CASE F_TagCode WHEN 'timeProduction' THEN f_value ELSE 0 END) timeProduction
,sum(CASE F_TagCode WHEN 'numWorkers' THEN f_value ELSE 0 END) numWorkers
,sum(CASE F_TagCode WHEN 'theoryUPH' THEN f_value ELSE 0 END) theoryUPH
,sum(CASE F_TagCode WHEN 'numFeed' THEN f_value ELSE 0 END) numFeed
,sum(CASE F_TagCode WHEN 'targetUPPH' THEN f_value ELSE 0 END) targetUPPH
,sum(CASE F_TagCode WHEN 'targetWasteRate' THEN f_value ELSE 0 END) targetWasteRate
   from SE_KPI_TagValue 
 where  F_DataDate>=dateadd(mm,-9,getdate()) and F_IsLast = 1 
 group by year(F_DataDate),
 month(F_DataDate)
)b  on b.f_year=a.f_year and b.f_month = a.f_month
 order by a.f_year,a.f_month asc ; 

  10周的数据统计

select a.f_year,a.F_Week 
, Convert(decimal(5,2),100-100*numQualified/nullif(numFeed,0)) KpiUnqualified
, Convert(decimal(5,2),numQualified/nullif((timeProduction/60),0)/nullif(theoryUPH,0)) KpiOEE 
, Convert(decimal(5,2),100*numQualified/nullif( numPlanned ,0)) KpiPlanRate
, Convert(decimal(5,2),100*numWasteMater/nullif( numFeed ,0))KpiWasteMater
, Convert(decimal(5,2),numQualified/nullif((timeProduction/60),0)) KpiUPH
, Convert(decimal(5,2),numQualified/nullif((timeProduction/60),0)/nullif(numWorkers,0)) KpiUPPH
, Convert(decimal(5,2),100*numWorkWaste/nullif((numFeed-numWasteMater),0))  KpiWasteRate
--,b.targetUnqualified,b.numWasteOther,b.targetOEE,b.targetPlanRate,b.targetWasteMater,b.numPlanned,b.numQualified,b.numWasteMater,b.numWorkWaste,b.targetUPH,b.timeProduction,b.numWorkers,b.theoryUPH,b.numFeed,b.targetUPPH,b.targetWasteRate
 from (select year(F_WeekDay) f_year,DATEPART(week, F_WeekDay)  F_Week from (
SELECT  DATEADD(wk,number,dateadd(wk,-9,getdate()))  AS F_WeekDay   FROM master..spt_values WHERE TYPE = 'P' AND DATEADD(wk,number,dateadd(wk,-9,getdate())) <= getdate() )c  )a
 left join 
 (select  year(F_DataDate) f_year,DATEPART(week, F_DataDate) F_Week
,sum(CASE F_TagCode WHEN 'targetUnqualified' THEN f_value ELSE 0 END) targetUnqualified
,sum(CASE F_TagCode WHEN 'numWasteOther' THEN f_value ELSE 0 END) numWasteOther
,sum(CASE F_TagCode WHEN 'targetOEE' THEN f_value ELSE 0 END) targetOEE
,sum(CASE F_TagCode WHEN 'targetPlanRate' THEN f_value ELSE 0 END) targetPlanRate
,sum(CASE F_TagCode WHEN 'targetWasteMater' THEN f_value ELSE 0 END) targetWasteMater
,sum(CASE F_TagCode WHEN 'numPlanned' THEN f_value ELSE 0 END) numPlanned
,sum(CASE F_TagCode WHEN 'numQualified' THEN f_value ELSE 0 END) numQualified
,sum(CASE F_TagCode WHEN 'numWasteMater' THEN f_value ELSE 0 END) numWasteMater
,sum(CASE F_TagCode WHEN 'numWorkWaste' THEN f_value ELSE 0 END) numWorkWaste
,sum(CASE F_TagCode WHEN 'targetUPH' THEN f_value ELSE 0 END) targetUPH
,sum(CASE F_TagCode WHEN 'timeProduction' THEN f_value ELSE 0 END) timeProduction
,sum(CASE F_TagCode WHEN 'numWorkers' THEN f_value ELSE 0 END) numWorkers
,sum(CASE F_TagCode WHEN 'theoryUPH' THEN f_value ELSE 0 END) theoryUPH
,sum(CASE F_TagCode WHEN 'numFeed' THEN f_value ELSE 0 END) numFeed
,sum(CASE F_TagCode WHEN 'targetUPPH' THEN f_value ELSE 0 END) targetUPPH
,sum(CASE F_TagCode WHEN 'targetWasteRate' THEN f_value ELSE 0 END) targetWasteRate
   from SE_KPI_TagValue 
 where  F_DataDate>=dateadd(wk,-9,getdate())  and F_IsLast = 1 
 GROUP BY  year(F_DataDate) ,DATEPART(week, F_DataDate)
)b  on b.f_year=a.f_year and b.F_Week = a.F_Week
 order by a.f_year,a.F_Week asc ; 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无语逍遥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值