0
這就是我想要實現:如何按Column1進行分組並將Count2與Count(*)相乘?
SELECT COUNT(*) * dd.Material_Quantity as [Count], tabSparePart.SparePartName
FROM tabDataDetail AS dd INNER JOIN
tabSparePart ON dd.fiSparePart = tabSparePart.idSparePart
WHERE dd.Reused_Indicator = 1
GROUP BY tabSparePart.SparePartName
ORDER BY Count DESC, tabSparePart.SparePartName
計數的所有sparepart OCCURENCES並與他們對應的Material_Quantity
值乘以他們。 但我得到以下錯誤:
8118: Column 'tabDataDetail.Material_Quantity' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.
我怎麼能乘這兩個值有意義?簡單的SUM
或AVG
會給出正確的結果嗎?例如:COUNT(*) * AVG(dd.Material_Quantity) as [Count]
嗯,你的意思我並不需要在所有的,因爲我反正SELECT COUNT(*)想要獲得Material_Quantity。這就說得通了。謝謝。 'Sum'只會求出符合'Where'條件和'Group-By'的行? –
@Tim Schmelter:是的,這隻會和'where'匹配的行總和,'sum'只能用於組中的行。 – Andomar
我已經接受你的答案,雖然我有問題,許多行有一個鏈接的備件,但material_quantity爲null或0.我想我會改變它們到1.編輯:解決:我忘記添加另一個條件在我的地方條款。 –