在PRICE_TYPE = MSRP的数据表中,应将金额添加到msrp列,而PRICE_TYPE = SELP时,应将金额添加到selp列, 我如何编写查询以完成上述任务,谢谢。 第一张图片应该是所需的输出。
答案 0 :(得分:1)
获得预期结果的一种方法:
select MATERIAL_NUMBER, [MSRP],[SELP]
FROM
(
SELECT
MATERIAL_NUMBER,
PriceType,
Sum(Amount)
FROM Org_table
GROUP BY
MATERIAL_NUMBER,
PriceType
) tbl
pivot
(
sum(Amount)
for PriceType in ([MSRP],[SELP])
)
希望它会有所帮助:)
答案 1 :(得分:0)
您似乎想获取支点,可以尝试使用条件汇总函数。
CASE WHEN
具有聚合功能。
SELECT MATERIAL_NUMBER,
SUM(CASE WHEN PRICE_TYPE = 'MSRP' THEN AMOUNT END ) MSRP,
SUM(CASE WHEN PRICE_TYPE = 'SELP' THEN AMOUNT END ) SELP
FROM T
GROUP BY
MATERIAL_NUMBER
注意
由于您的Amount
看起来像是浮点值,因此我使用了一些SUM