sqlserver统计一段时间内每半小时的订单总量

select dateadd(mi,(datediff(mi,convert(varchar(10),dateadd(ss,-1,[订单创建时间]),120),dateadd(ss,-1,[订单创建时间]))/30)*30,convert(varchar(10),[订单创建时间],120)) as 时间段, count([订单号]) as 订单总量 fromT_VALID_ORDER where [订单创建时间]<'2017-12-31 23:59:59' and [订单创建时间]>'2016-01-01 00:00:00' group by dateadd(mi,(datediff(mi,convert(varchar(10),dateadd(ss,-1,[订单创建时间]),120),dateadd(ss,-1,[订单创建时间]))/30)*30,convert(varchar(10),[订单创建时间],120)) order by 时间段

【sqlserver统计一段时间内每半小时的订单总量】参考:http://bbs.csdn.net/topics/360003771

    推荐阅读