我目前正在尝试学习SQL,正在使用SQL Server 2008数据库进行一些简单的销售报告,尝试使用SUM
、COUNT
、AVG
和GROUP BY
函数。我已经成功地获得了每个分组的总数、计数和平均值。
如何获得所有分组行的总和?
截至目前的SQL:
SELECT
SUM(dbo.tbl_orderitems.mon_orditems_pprice) AS prodTotal,
AVG(dbo.tbl_orderitems.mon_orditems_pprice) AS avgPrice,
count(dbo.tbl_orderitems.uid_orditems_prodid) AS prodQty,
dbo.tbl_orderitems.txt_orditems_pname
FROM
dbo.tbl_orderitems
INNER JOIN
dbo.tbl_orders
ON (dbo.tbl_orderitems.uid_orditems_orderid = dbo.tbl_orders.uid_orders)
WHERE
dbo.tbl_orders.uid_order_webid =
<cfqueryparam cfsqltype="cf_sql_integer" value="#session.webid#">
AND dbo.tbl_orders.txt_order_status =
<cfqueryparam cfsqltype="cf_sql_varchar" value="#arguments.sale_status#">
GROUP BY
dbo.tbl_orderitems.txt_orditems_pname
产品 数量 总价 平均价
威斯特伯里攀爬框 17 8,023.00 471.94 桑德波因特豪华攀爬框 34 36,146.00 1,063.12 罗斯伯里攀爬框 9 7,441.00 826.78 里奇维尤得克萨斯攀爬框 10 6,990.00 699 Selwood野餐桌 9 489.92 54.44
我需要数量列和总价列的总和
非常感谢
Jason
GROUPING SETS
。 - Martin Smith