字段(供应商编号,批次号,合格数,不合格数,检验结果,年月,季度,。)
表名(FRM_IQC_物料到货登记)
想写个函数实现,我传3个参数(供应商编号,年度,季度)
函数自动算出这个供应商的季度批次合格率公式是 合格率=(合格的批次/总批次)*100% 合格批次=Count(distinct 批次号) 不合格批次=Count(distinct 批次号) WHERE 检验结果=合格
表名(FRM_IQC_物料到货登记)
想写个函数实现,我传3个参数(供应商编号,年度,季度)
函数自动算出这个供应商的季度批次合格率公式是 合格率=(合格的批次/总批次)*100% 合格批次=Count(distinct 批次号) 不合格批次=Count(distinct 批次号) WHERE 检验结果=合格
----- 怎么知道这个批次是合格的呀
select 供应商编号,年月,季度,合格率 = ltrim((100*合格数)/(合格+不合格数)) + '%',
不合格率 = ltrim((100*不合格数)/(合格+不合格数)) + '%'
from
(
select 供应商编号,年月,季度,
count(case when 检验结果 = '合格' then 1 else 0 end) as 合格数,
count(case when 检验结果 = '不合格' then 1 else 0 end) as 不合格数
from tb
group by 供应商编号,年月,季度
) a
where a.供应商编号=@s1 and a.年月= @s2 and a.季度 = @s3