sql按日期时间统计次数的语句怎么写?

1、当日12~次日12点,可以把时间加上12个小时再计算,就是到次日12点再结算。

2、再根据处理后的日期group by。

3、获取group by以后的记录条数即可。

完整sql如下,在SqlServer2008下测试通过:

select?count(*)?as?'消费次数'?from?(

select?

[卡号],

CONVERT(varchar(10),DATEADD(hour,12,[消费时间]),101)?as?'结算日期',

COUNT(*)as?'次数'

from?[消费明细]

where?[卡号]='001'

group?by?

[卡号],

CONVERT(varchar(10),DATEADD(hour,12,[消费时间]),101)

)t1