SQL 总和,多个分组依据和日期条件

SQL sum, multiple Group By's and Date criteria

我希望对 SQL table 执行求和计算,以查找特定销售人员持有的特定库存商品的数量,直至并包括特定日期。

每当我不考虑日期范围标准时,我都可以执行求和函数以 Salesperson/item 为基础查找数量,但是一旦我添加该方面,一切都会发生有点梨形!到目前为止,这是我的代码:

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 过滤器需要确保它忽略仓库 quantities.My SQL 知识仅限于我 运行 在工作中进入它的少数实例,我的互动主要是基于 Excel 中的 Microsoft Query。在查看上面的代码时,我认为 'Registering date' 条件应该在 'WHERE' 部分中,但是当我使用 Microsoft Query 中可用的选项添加条件时,它会创建 'HAVING'线.

谁能指点一下,不胜感激!

干杯

彼得

我会想象这样的查询:

SELECT Salesperson, [Item No], Sum(Quantity) AS Quantity
--------------------^ escape the non-standard column name
FROM dbo.??
---------^ table name goes here
WHERE Location Code = 'VAN' AND
      [Registering Date] <= '2017-05-03'
------^ put the filtering condition in the correct clause
GROUP BY Salesperson, Item No
-----------------------------^ remove the comma

您编写的代码有多个错误。我猜大多数是转录错误而不是原始查询(例如,如果 FROM 中没有给出 table,则查询不会 运行)。 "major" 错误将在 HAVING 子句而不是 WHERE 子句中过滤。