34,590
社区成员
发帖
与我相关
我的任务
分享
SELECT A.code,A.name,B.number,C.number
FROM 表A A JOIN
(SELECT ACode,status,SUM(number) AS number FROM 表B GROUP BY ACode,status) B ON A.name=B.ACode
JOIN
(SELECT ACode,status,SUM(number) AS number FROM 表C GROUP BY ACode,status) C ON A.name=C.ACode
/*
code name number number
1 11 300 190
2 22 190 230
*/
select a.code,a.name,sum(case when b.status=1 then b.number else 0 end) as statusnumber1 ,sum(case when c.status=2 then c.number else 0 end) as statusnumber2
from a inner join b on a.code = b.Acode inner join c on a.code=c.Acode group by a.code,a.naem,b.status,c.status
SELECT A.code,A.name,B.number,C.number
FROM 表A A JOIN
(SELECT ACode,status,SUM(number) AS number FROM 表B GROUP BY ACode,status) B ON A.code=B.ACode
JOIN
(SELECT ACode,status,SUM(number) AS number FROM 表C GROUP BY ACode,status) C ON A.code=C.ACode
select a.code,a.name,sum(case when b.status=1 then b.number end) as statusnumber1 ,
sum(case when c.status=2 then c.number end) as statusnumber2
from a inner join b on a.code = b.Acode inner join c on a.code=c.Acode group by a.code,a.naem,b.status,c.status