注册 登录
编程论坛 Oracle论坛

怎么通过判断统计时间段内的数据条数

sven0611 发布于 2012-08-17 16:10, 1160 次点击
现有订单表order,
表中含有两个字段orderid,ordertime
怎么统计距离今天0-5天,6-10天,10天以上这三个时间段内订单的条数,
我只会把下面这段语句修改了分三次查询,很麻烦,每次查询都要修改,求指点高级技能,比如传说中的casewhen
select  count(orderid) as num from order
where  ordertime > '08/13/2012 00:00:00'
and  ordertime <= '08/17/2012 23:59:59'
1 回复
#2
oracle菜菜2012-09-22 15:03
select (case when ordertime <=当前系统时间+5天 then 时间1
            when ordertime <=当前系统时间+10天 andordertime >=当前系统时间+6天 then 时间2
            when ordertime  andordertime >=当前系统时间+10天 then 时间3
       end ) 日期 , count(1) for order
where ordertime>=当前系统时间

group by 日期
大概思路,自己修改下
1