查询七天数据,每天数据有且只有一条
表A,id,Name,date
查询最近七天的数据,要统计每天的数据量,有且只有七条数据……
select date,sum(1) as num from A where datebetween dateadd(day,-7,getdate()) and getdate()
group by date
这是我写的,因为date是datetime类型的,没办法按每一天分组,求大神帮解决啊…… SqlServer T-SQL select
[解决办法]
SELECT a.[date], num=SUM((CASE WHEN B.[date] IS NULL THEN 0 ELSE 1 END)) --注意:你的计算方式可能要变
FROM
(
SELECT [date]=CONVERT(CHAR(10),DATEADD(DAY,-number,GETDATE()),120) FROM master..spt_values
WHERE [type] = 'p' AND number < 7
) a
LEFT JOIN youtablename B
ON a.[date] = CONVERT(CHAR(10), B.[date], 120)
GROUP BY a.[date]