【发布时间】:2017-05-05 13:39:42
【问题描述】:
我希望对 SQL 表执行总和计算,以查找特定销售人员在特定日期(包括特定日期)持有的特定库存项目的数量。
只要我不考虑日期范围标准,我就可以执行求和功能来查找销售人员/项目的数量,但是一旦我添加了这方面,一切都变得有点梨形!到目前为止,这是我的代码:
SELECT Salesperson, Item No, Sum(Quantity) AS 'Quantity'
FROM dbo
WHERE (Location Code='VAN')
GROUP BY Salesperson, Item No,
HAVING (Registering Date<={ts '2017-05-03 00:00:00'})
需要位置代码 = VAN 过滤器以确保它忽略仓库数量。我的 SQL 知识仅限于我在工作中遇到的少数实例,并且我的交互主要基于 Excel 中的 Microsoft Query。查看上面的代码时,我认为“注册日期”标准应该在“WHERE”部分,但是当我使用 Microsoft Query 中可用的选项添加标准时,它会创建“HAVING”行。
如果有人可以提供任何指示,将不胜感激!
干杯
彼得
【问题讨论】:
-
你能提供你得到的异常信息吗?
-
您在
GROUP BY和Item No末尾有一个逗号在GROUP BY中无效,并且可能不是您在SELECT中想要的。 -
War- 当我执行查询时没有显示异常信息或提示 - 它似乎运行良好,但是显示的数量与我执行检查计算的手动总和不匹配。 Gordon Linoff - 由于当前数据的字符串长度,此处使用的列名略有更改。在我的数据库中,“项目编号”的列是 Item_No
标签: sql microsoft-query