我的表格中包含以下数据:
ID OrderId TAX% Quantity UnitCost
1 5 28 2 1280
2 5 18 1 1180
我希望输出如下:
ORDERID TaxableValue TaxValue
5 3000 740
我怎样才能做到这一点?我尝试过:
SELECT orderid,
ROUND((SUM(UnitCost*Quantity)*TAX)/(100+TAX),2) AS taxValue,
ROUND(SUM(unitCost*quantity)-ROUND((SUM(UnitCost*Quantity)*TAX)/(100+TAX),2),2) AS taxableValue
FROM table1
GROUP BY OrderId;
但上面的查询无效。
对不起,这是税率。这是新的更新查询。请考虑一下。
答案 0 :(得分:2)
很确定它就像做一些数学一样简单。
select OrderID
, TaxableValue = SUM(UnitCost - TAX)
, TaxValue = SUM(TAX * Quantity)
from YourTable
group by OrderID
编辑:TaxableValue
对于那些想要证明这是有效的人。
declare @Something table
(
ID int
, OrderId int
, TAX int
, Quantity int
, UnitCost int
)
insert @Something values
(1, 5, 28, 2, 228)
, (2, 5, 18, 1, 118)
select OrderID
, TaxableValue = SUM(UnitCost - TAX)
, TaxValue = SUM(TAX * Quantity)
from @Something
group by OrderID
答案 1 :(得分:0)
这是如何做到的。
SELECT
orderid,
sum(unitcost*quantity) - sum(tax*quantity) as taxablevalue,
sum(tax*quantity) as taxvalue
FROM table1
GROUP BY OrderId;
答案 2 :(得分:0)
select OrderId
, SUM((unitcost * quantity * tax)/(100+tax)) as TaxValue
, SUM(unitcost * quantity)-SUM((unitcost * quantity * tax)/(100+tax)) as taxableValue
from table1
group by OrderId