如何在SQL Server中執行sum(a)/sum(b)
查詢?如何在SQL Server中執行sum(a)/ sum(b)查詢?
我有子查詢與a = sum(...)
和b = count(...)
。我需要爲主查詢中的子查詢中的所有記錄計算avg(all)
。它是avg(all) = sum(a)/sum(b)
。但是SQL Server不允許這個表達式。如何計算它?主查詢中記錄的數量不能更改。
非常感謝您的幫助!
select
sum(a)/sum(b) as avg_x
from
(
select
sum(x) as a,
count(x) as b
from
xyTable
group by
y
)
group by
<any_columns>
錯誤是:
不能對包含聚合或子查詢表達式 執行聚合功能。
顯示整個查詢 – 2012-02-14 22:22:35
已添加簡化查詢。 – Dmitry 2012-02-14 22:31:07
如果你自己運行子查詢,你會得到正確的數據嗎?另外,確切的錯誤信息是什麼?發佈前請閱讀[常見問題]和[問]。 – 2012-02-14 22:37:11