我正在使用以下數據透視表來計算每月的銷售額。使用數據透視表減去列總計SQL Server 2008
mon_pay_amount
用於支付金額。我在tbl_orders
表中還有一列,其中包含應用的所有折扣,這是mon_order_discount
。
我需要能夠對每月的折扣進行彙總,並將它們從各自的付款金額中扣除。事後看來,折扣應該已經記錄在支付表中,這可能會讓這更容易!
相當新的PIVOT
表和銷售報告,任何人都知道任何好的教程,已通過使用和修改的例子到目前爲止!
數據說明
Table Name ID FK Columns
---------------------------------------------------------------------
tbl_orders uid_orders mon_order_discount
tbl_payment uid_payment uid_pay_orderid mon_pay_amount
數據
Data: Jan Feb March
Discounts: 10.00 20.00 10.00
Payments: 200.00 300.00 400.00
結果
Data: Jan Feb March
Totals-Discount: 190.00 280.000 390.00
查詢
SELECT *
FROM
(SELECT
DATENAME(month, dte_pay_paydate) mth,
mon_pay_amount
FROM
tbl_payment
INNER JOIN
dbo.tbl_orders ON (uid_pay_orderid = uid_orders)
WHERE
bit_pay_paid = 1
AND txt_pay_descrip <> 'Credit'
AND uid_order_webid = 1
) x
PIVOT
(
SUM(mon_pay_amount)
FOR
mth IN ([January], [February], [March], [April], [May],
[June], [July], [August], September, [October],
[November], [December])
) p
非常感謝
傑森
看來您的問題我s不是使用數據透視表,而是使用嵌套查詢。如果嵌套的子查詢coock你需要的數據,然後樞軸值是正確的。這是? – danihp
你是說在嵌套子查詢中執行減法嗎?這又將結果傳遞給數據透視表。 –
@JasonCongerton你可以發佈一些樣本數據,然後期望的結果? – Taryn