现在有两张表,汇总表和明细表,汇总表行数为样本数,明细表数据量远大于汇总表,明细表主要有两列数据,分别为缺陷位置和缺陷数量,缺陷位置分为5个类别,以ABCDE标识,现在需要统计缺陷率,ABCDE不同位置的缺陷率计算方式不同,基本计算方式为缺陷数量*X/样本数*100%,实际使用时需要以月/季度/年来统计,该问题设计两张表跨表运算,请问如何实现?
sql中直接处理好
============
select a.类别,b.明细总数/a.样本总数 as 缺陷率 from
(select 类别,sum(数量) as 样本总数 from 样本表) a
left jion (select 类别,sum(数量) as 明细总数 from 明细表) b on a.类别=b.类别