Sql server 将列分组,然后减去行?
我已经看了其他的问题,但仍然在挣扎,所以我想我会把它放上去 我需要列出所有未完成订单的清单,并按部分订单 所以我有Partid、tradequantity和invoicequantity列 因此,交易员数量是指已订购的数量,而发票是指已交付的数量 我已经完成了一半,但我感觉我可能需要一张新桌子?这是到目前为止的代码Sql server 将列分组,然后减去行?,sql-server,Sql Server,我已经看了其他的问题,但仍然在挣扎,所以我想我会把它放上去 我需要列出所有未完成订单的清单,并按部分订单 所以我有Partid、tradequantity和invoicequantity列 因此,交易员数量是指已订购的数量,而发票是指已交付的数量 我已经完成了一半,但我感觉我可能需要一张新桌子?这是到目前为止的代码 select (traderquantity - invoicedquantity) AS balance, partid, invoicedquantity,traderquant
select (traderquantity - invoicedquantity) AS balance, partid, invoicedquantity,traderquantity
from orderitems
where status = 'ACTIVE'
and ordertype = 'PO'
order by partid
最初尝试对traderquantity使用Sum并减去InvoiceQuantity,但当我转到group by PartId时,它返回一个错误
编辑:只是补充一下,我实际上可以使用Excel完成这项工作,但我想知道如何在SQL中完成这项工作
任何帮助都将不胜感激 试试这个:
select
SUM(traderquantity - invoicedquantity) AS balance,
partid,
SUM(invoicedquantity) AS TotalInvoicedquantity,
SUM(traderquantity) AS TotalTraderquantity
from
orderitems
where
status = 'ACTIVE'
and ordertype = 'PO'
GROUP BY
partid
order by
partid
你是个明星!非常感谢你。我想我最好得到一个SQL傻瓜指南!我想补充一点,我已经尝试了一半。我有上面的第一行,括号内有减法,但没有考虑对其他列求和。现在看看它就很有道理了!没问题。很乐意帮忙