我有以下格式的数据。
问:在销售数量方面,找到属于前5个类别的类别的每个子类别的平均收入和总收入。
我写了下面提到的代码。
现在,我知道我的子查询具有聚合函数和所需的列。我希望输出仅是“ PROD_CAT_CODE”列,还希望子查询中的数量总和,因为它有助于我找出销售量最大的产品猫代码。
SELECT PROD_SUBCAT_CODE, SUM(TOTAL_AMT)[SUM], AVG(TOTAL_AMT)[AVG]
FROM TRANSACTIONS
WHERE PROD_CAT_CODE = (
SELECT
TOP 5 PROD_CAT_CODE, SUM(T1.QTY) [Quantity Sold]
FROM TRANSACTIONS
GROUP BY PROD_CAT_CODE
ORDER BY SUM(T1.QTY)
DESC
)
GROUP BY PROD_SUBCAT_CODE
ORDER BY PROD_SUBCAT_CODE
提前致谢。
您可以在子查询上使用内部联接
SELECT PROD_SUBCAT_CODE, SUM(TOTAL_AMT)[SUM], AVG(TOTAL_AMT)[AVG]
FROM TRANSACTIONS
INNER JOIN (
SELECT
TOP 5 PROD_CAT_CODE, SUM(T1.QTY) [Quantity Sold]
FROM TRANSACTIONS
GROUP BY PROD_CAT_CODE
ORDER BY SUM(T1.QTY)
DESC
) T ON T.PROD_CAT_CODE = TRANSACTIONS.PROD_CAT_CODE
GROUP BY PROD_SUBCAT_CODE
ORDER BY PROD_SUBCAT_CODE
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句