我有一个包含2个有趣条目的表格:
VALUE 包含整数条目, dtStart 包含时间戳(日期和时间)
我的实际查询是:
SELECT SUM(value) as Sum
FROM [DB].[table]
WHERE AND dtStart BETWEEN '20130401 00:00:00.000'
AND '20130402 00:00:00.000'
有点令人失望,因为我需要一个查询来为我提供一天的解决方案,但我需要一整个月的每一天。现在我正在编辑每天的时间字段。 什么是在查询中每天获得多个查询(每天1个)的解决方案?
每个例子:
答案 0 :(得分:2)
SELECT
SUM(valueAns) AS totalval,(ROW_NUMBER() OVER ( ORDER BY dtStart)) AS day,
dtStart
FROM
a group by CONVERT(DATE, dtStart)
请参阅sql demo for you answer
答案 1 :(得分:1)
您需要GROUP BY
一天,因为dtStart
有时间,因此可以通过将其转换为DATE
SELECT DATEPART(DD, CONVERT(DATE, dtStart)) AS dtStartDay, SUM(value) as Sum
FROM [DB].[table]
WHERE dtStart BETWEEN '2013-04-01' AND '2013-04-30'
GROUP BY CONVERT(DATE, dtStart)
ORDER BY CONVERT(DATE, dtStart)
编辑:看看你的输出我推荐使用DATEPART
答案 2 :(得分:1)
您可以尝试运行此查询。
SELECT SUM(value) as Sum
FROM [DB].[table]
WHERE
CONVERT(Date,dtStart )
BETWEEN CONVERT(DATE, GETDATE())
AND
DATEADD(DAY,1,GETDATE())