22,207
社区成员
发帖
与我相关
我的任务
分享
select
p9.ID,
p9.ProductNum,
水泥=sum(case when p8.ID = 1 then p1.UPNum else 0 end)-0.3,
砂=sum(case when p8.ID = 10 then p1.UPNum else 0 end)-0.3,
石=sum(case when p8.ID = 20 then p1.UPNum else 0 end),
粉煤灰=sum(case when p8.ID = 30 then p1.UPNum else 0 end),
矿粉=sum(case when p8.ID = 40 then p1.UPNum else 0 end)-0.1,
外加剂=sum(case when p8.ID = 50 and p7.StyleName not like '%膨胀剂%' then p1.UPNum else 0 end),
膨胀剂=sum(case when p8.ID = 50 and p7.StyleName like '%膨胀剂%' then p1.UPNum else 0 end),
水=sum(case when p8.ID = 60 then p1.UPNum else 0 end)
from A as p1
inner join B as p2 on p1.TestYieldAppraiseProduct_ID = p2.id
inner join C as p3 on p2.TestMixSelectProduct_ID = p3.ID
inner join D as m3 on m3.ID=p3.TestMixProduct_ID
inner join E as p6 on m3.StuffFactoryProduct_ID = p6.ID
inner join F as p7 on p6.ProductStyle_ID = p7.ID
inner join G as p8 on p7.ProductType_ID = p8.ID
inner join H as p9 on p1.QueryMS_ID = p9.ID
group by p9.ID,p9.ProductNum
SELECT ID,
ProductNum,
水泥 = Sum(水泥),
砂 = Sum(砂),
石 = Sum(石),
粉煤灰 = Sum(粉煤灰),
矿粉 = Sum(矿粉),
外加剂 =Sum(外加剂),
膨胀剂 = Sum(膨胀剂),
水=Sum(水)
From(
Select p9.ID,
p9.ProductNum,
水泥 = (CASE WHEN p8.ID = 1 THEN p1.UPNum ELSE 0 END) -0.3,
砂 = (CASE WHEN p8.ID = 10 THEN p1.UPNum ELSE 0 END) -0.3,
石 = (CASE WHEN p8.ID = 20 THEN p1.UPNum ELSE 0 END),
粉煤灰 = (CASE WHEN p8.ID = 30 THEN p1.UPNum ELSE 0 END),
矿粉 = (CASE WHEN p8.ID = 40 THEN p1.UPNum ELSE 0 END) -0.1,
外加剂 = (
CASE
WHEN p8.ID = 50
AND p7.StyleName NOT LIKE '%膨胀剂%' THEN p1.UPNum ELSE 0 END
),
膨胀剂 = (
CASE
WHEN p8.ID = 50
AND p7.StyleName LIKE '%膨胀剂%' THEN p1.UPNum ELSE 0 END
),
水 = (CASE WHEN p8.ID = 60 THEN p1.UPNum ELSE 0 END)
FROM A AS p1
INNER JOIN B AS p2
ON p1.TestYieldAppraiseProduct_ID = p2.id
INNER JOIN C AS p3
ON p2.TestMixSelectProduct_ID = p3.ID
INNER JOIN D AS m3
ON m3.ID = p3.TestMixProduct_ID
INNER JOIN E AS p6
ON m3.StuffFactoryProduct_ID = p6.ID
INNER JOIN F AS p7
ON p6.ProductStyle_ID = p7.ID
INNER JOIN G AS p8
ON p7.ProductType_ID = p8.ID
INNER JOIN H AS p9
ON p1.QueryMS_ID = p9.ID
)Data
GROUP BY ID,ProductNum
SELECT p9.ID,
p9.ProductNum,
水泥 = SUM(CASE WHEN p8.ID = 1 THEN p1.UPNum ELSE 0 END) -0.3,
砂 = SUM(CASE WHEN p8.ID = 10 THEN p1.UPNum ELSE 0 END) -0.3,
石 = SUM(CASE WHEN p8.ID = 20 THEN p1.UPNum ELSE 0 END),
粉煤灰 = SUM(CASE WHEN p8.ID = 30 THEN p1.UPNum ELSE 0 END),
矿粉 = SUM(CASE WHEN p8.ID = 40 THEN p1.UPNum ELSE 0 END) -0.1,
--外加剂 = SUM(
-- CASE
-- WHEN p8.ID = 50
-- AND p7.StyleName NOT LIKE '%膨胀剂%' THEN p1.UPNum ELSE 0 END
--),
--膨胀剂 = SUM(
-- CASE
-- WHEN p8.ID = 50
-- AND p7.StyleName LIKE '%膨胀剂%' THEN p1.UPNum ELSE 0 END
--),
水 = SUM(CASE WHEN p8.ID = 60 THEN p1.UPNum ELSE 0 END)
FROM A AS p1
INNER JOIN B AS p2
ON p1.TestYieldAppraiseProduct_ID = p2.id
INNER JOIN C AS p3
ON p2.TestMixSelectProduct_ID = p3.ID
INNER JOIN D AS m3
ON m3.ID = p3.TestMixProduct_ID
INNER JOIN E AS p6
ON m3.StuffFactoryProduct_ID = p6.ID
INNER JOIN F AS p7
ON p6.ProductStyle_ID = p7.ID
INNER JOIN G AS p8
ON p7.ProductType_ID = p8.ID
INNER JOIN H AS p9
ON p1.QueryMS_ID = p9.ID
GROUP BY
p9.ID,
p9.ProductNum