【发布时间】:2016-12-05 20:12:22
【问题描述】:
希望这很简单。我要查找的是每天按部门划分的总销售额。有多个部门,在多个日期的多个商店中。
我得到的是部门中每个销售的一行。我认为这是因为 SQL 正在执行它所告诉的操作,并且由于交易时间的原因,每次销售都向我显示一行。我每天都在尝试分组,我确信我错过了一些简单的东西。
这是一个示例表
SalesTotal | Department | StoreNumber | SalesDateTime
---------- | ---------- | ----------- | -------------------
3.96 Books 5000 2016-10-01 10:01:11
0.99 Books 5000 2016-10-01 10:03:40
3.98 Books 5000 2016-10-01 10:19:45
0.99 Books 5000 2016-10-01 10:27:58
2.98 Women 5000 2016-10-01 11:50:11
1.49 Women 5000 2016-10-01 11:58:35
2.97 Women 5000 2016-10-01 12:05:11
4.15 Women 5000 2016-10-01 12:06:20
3.98 Mens 5000 2016-10-01 12:55:03
4.98 Mens 5000 2016-10-01 13:02:13
4.47 Mens 5000 2016-10-01 13:19:40
我期待的是这个
SalesTotal | Department | StoreNumber | SalesDateTime
---------- | ---------- | ----------- | -------------------
9.93 Books 5000 2016-10-01
11.58 Womens 5000 2016-10-01
13.43 Mens 5000 2016-10-01
我认为这只是一个 SUM 和分组查询,但我无法让它以这种方式出现。我正在从表中获取数据并将其放入临时表中,因为我有其他表中的其他数据(如商店名称等),但上面的值是准确的。下面是查询(是的,我有几个变量,但仅用于在前端选择日期)...
SELECT SUM(Price) AS SalesTotal
, Department
, StoreNumber
, SaleDateTime
INTO #tblSales
FROM LineItem
WHERE SaleDateTime BETWEEN @StartDate AND @EndDate
GROUP BY Department, T.StoreNumber, SaleDateTime
SELECT *
FROM #tblSales
感谢您查看,如果需要更多信息,请告诉我。如前所述,我似乎无法弄清楚我在分组部分中缺少什么。我很感激能得到任何帮助。
【问题讨论】:
标签: sql sql-server-2012