2
我想在SQL Server中计算加权平均值。我知道有很多问题解决了这个问题,但是我有另外一个问题,我查询了很多其他的列,如GROUP BY和集合函数像sum()和avg()。SQL Server:加权平均值+ GROUP BY
这里是我的查询:
SELECT
AVG(tauftr.kalkek) AS 'PurchPrice',
SUM(tauftr.amount) AS 'Amount',
AVG(tauftr.price) AS 'SellingPrice',
tauftr.product AS 'Product',
auftrkopf.ins_usr AS 'Seller',
DATEPART(wk, auftrkopf.date) AS 'Week',
AVG([margin]) AS 'Margin' /* <--- THIS IS WRONG */
/* CALCULATE HERE: WEIGHTED AVERAGE BETWEEN 'amount' and 'margin' */
FROM
[tauftr] AS tauftr
JOIN
tauftrkopf AS auftrkopf ON tauftr.linktauftrkopf = auftrkopf.kopfnr
WHERE
auftrkopf.[status] = 'L'
AND auftrkopf.typ = 'B'
AND auftrkopf.date >= '01.03.2017'
AND auftrkopf.ins_usr ='HS'
GROUP BY
tauftr.product, auftrkopf.ins_usr, DATEPART(wk,auftrkopf.date)
我想这可能是可能使用INNER JOIN
一模一样的WHERE
条款,但我不想执行查询两次。我不知道要加入什么字段...
是否有可能不创建表? (我没有写权限)
不错!我被困在试图找出他想用作体重的那一个。 – SqlZim
@SqlZim陪审团仍然不在,OP可能正在寻找总WAM。 –
有时你看不到简单的解决方案-.- 谢谢!!! – Harper