简体   繁体   English

访问查询 - 汇总本月至今

[英]Access Query - Summing Month to Date

I currently have a crosstab query set up to return amounts by month in 2017. This displays month totals for each location individually.我目前有一个交叉表查询,设置为按月返回 2017 年的金额。这会分别显示每个位置的月份总计。 I want to sum year to date (month 1-7) and have it only return one value for the location.我想对年初至今(第 1-7 个月)求和,并让它只返回该位置的一个值。 I am having trouble doing this for some reason.由于某种原因,我在这样做时遇到了麻烦。

TRANSFORM Sum(Location.Amt) AS SumOfAmt
SELECT 
    Location.Div
  , Location.Store
  , Location.Year
  , Location.Month
FROM 
  [Location Name] 
  INNER JOIN Location 
    ON [Location Name].Line = Location.Line
WHERE 
  (
    Location.Store     <> 100 
    AND Location.Year   = 2017 
    AND Location.Month  < 8 
    AND Location.Line   < 11
GROUP BY 
  Location.Div
  , Location.Store
  , Location.Year
  , Location.Month
ORDER BY 
  Location.Div
  , Location.Store
  , [Location Name].LineDesc
PIVOT [Location Name].LineDesc
;

In your select and group by clauses you've listed Year and Month which means it will aggregate for each value in those columns.在您的selectgroup by子句中,您列出了YearMonth ,这意味着它将为这些列中的每个值聚合。 If you don't want that behavior, you should remove those columns from the query.如果您不希望出现这种行为,您应该从查询中删除这些列。

TRANSFORM Sum(Location.Amt) AS SumOfAmt
SELECT 
    Location.Div
  , Location.Store
FROM 
  [Location Name] 
  INNER JOIN Location 
    ON [Location Name].Line = Location.Line
WHERE 
  (
    Location.Store     <> 100 
    AND Location.Year   = 2017 
    AND Location.Month  < 8 
    AND Location.Line   < 11
GROUP BY 
  Location.Div
  , Location.Store
ORDER BY 
  Location.Div
  , Location.Store
  , [Location Name].LineDesc
PIVOT [Location Name].LineDesc
;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM