T1: 工位 故障代码 故障数 a 001 100 a 002 5 b 003 2 ...... T2 故障代码 故障类型 001 MA 002 MI 003 MI 第一个表是每个工位的不同故障的故障数统计 第二个表是每个故障的类型分为主缺故障(MA),次缺故障(MI) 用一条查询语句统计出每个工位的总故障数,主缺故障数.次缺故障数 3X
insert into T1
select 'a', '001', 100
union all
select 'a', '002', 5
union all
select 'b', '003', 2
insert into T2
select '001', 'MA'
union all
select '002', 'MI'
union all
select '003', 'MI'
select a.工位,总故障数=sum(故障数),
主缺故障数=sum(case when b.故障类型='MA' then a.故障数 else 0 end),
次缺故障数=sum(case when b.故障类型='MI' then a.故障数 else 0 end)
from T1 a
left join T2 b
on a.故障代码 = b.故障代码
group by a.工位
Select 工位,
主缺故障数=SUM(Case When 故障类型='MA' Then 故障数 ELse 0 End),
次缺故障数=SUM(Case When 故障类型='MI' Then 故障数 ELse 0 End)
From T1
Left Join T2
On T1.故障代码=T2.故障代码
Group By 工位
select a.工位,
主缺故障数=sum(case when b.故障类型='MA' then a.100 else 0 end),
次缺故障数=sum(case when b.故障类型='MI' then a.100 else 0 end)
from T1 a
left join T2 b
on a.故障代码=b.故障代码
group by a.工位