我正在尝试将过去10个月的数据按周汇总到一个表中。表中唯一的字段以DD-MM-YY格式列出日期。有没有一种简单的方法可以按周对这些数据进行分组?
发布于 2015-09-30 07:29:28
您可以这样尝试(使用SQL Server进行测试):
只需将此代码粘贴到一个空的查询窗口中并执行即可。适应您的需求。
DECLARE @tbl TABLE(DateValue VARCHAR(8),OtherValue INT);
INSERT INTO @tbl VALUES
('30-09-15',10)
,('29-09-15',20)
,('28-09-14',30)
,('28-08-14',10)
,('27-08-14',10);
SELECT CONVERT(DATETIME,DateValue,3) AS ConvertedDate
,DATEPART(WK,CONVERT(DATETIME,DateValue,3)) AS WeekIndex
,OtherValue
FROM @tbl
--And this is the way to use this for aggregates
;WITH MyData AS
(
SELECT CONVERT(DATETIME,DateValue,3) AS ConvertedDate
,DATEPART(ISO_WEEK,CONVERT(DATETIME,DateValue,3)) AS WeekIndex
,OtherValue
FROM @tbl
)
SELECT WeekIndex,SUM(OtherValue)
FROM MyData
GROUP BY WeekIndexhttps://stackoverflow.com/questions/32854513
复制相似问题