我正在使用 MS Access ,我遇到了一个我确定有一个简单修复的问题,但我找不到它。我原来有查询的第一列返回日期的“YY-WW”,但这与我的排序搞混了。所以我决定今年只使用“WW”。但是,我在今年使用Group By返回记录时遇到了麻烦。
这是我的代码:
SELECT DATEPART("ww",Total.Dated) AS Week,
Sum(Total.SplitTrailers) AS SplitTrailers, Sum(Total.NonSplitTrailers) AS NonSplitTrailers,
Sum([Total].[SplitTrailers]+[Total].[NonSplitTrailers]) AS TotalTrailers,
FORMAT(IIf( [SplitTrailers]<=0,0, [SplitTrailers]/([SplitTrailers]+[NonSplitTrailers])), "Percent") AS [% Frame Dock]
FROM Total
GROUP BY DATEPART("ww",Total.Dated)
如果有人能说出如何仅返回今年的记录或如何按“YY-WW”格式化的日期进行排序,我将非常感激。
谢谢!
答案 0 :(得分:1)
SELECT DATEPART("ww",Total.Dated) AS Week,
Sum(Total.SplitTrailers) AS SplitTrailers, Sum(Total.NonSplitTrailers) AS NonSplitTrailers,
Sum([Total].[SplitTrailers]+[Total].[NonSplitTrailers]) AS TotalTrailers,
FORMAT(IIf( [SplitTrailers]<=0,0, [SplitTrailers]/([SplitTrailers]+[NonSplitTrailers])), "Percent") AS [% Frame Dock]
FROM Total where Year(Total.Date)=Year(GetDate())--this will return the current year data
GROUP BY DATEPART("ww",Total.Dated)
答案 1 :(得分:0)
你能不只是添加一个WHERE子句?
SELECT
DATEPART("ww",Total.Dated) AS Week,
Sum(Total.SplitTrailers) AS SplitTrailers,
Sum(Total.NonSplitTrailers) AS NonSplitTrailers,
Sum([Total].[SplitTrailers]+[Total].[NonSplitTrailers]) AS TotalTrailers,
FORMAT(IIf( [SplitTrailers]<=0,0, [SplitTrailers]/([SplitTrailers]+[NonSplitTrailers])), "Percent") AS [% Frame Dock]
FROM Total
WHERE Year(Total.Dated) = Year(Date())
GROUP BY DATEPART("ww",Total.Dated)