半小时分组统计个数sql
group by 最后一个时间是多少按多少分组
select count(1), trunc(a.refund_insert_time, 'hh24')
+ case when to_char(refund_insert_time,'mi') >= '30' then numtodsinterval(30,'minute') else numtodsinterval(0,'minute') end
from refund_record a
where a.refund_complete_time < sysdate - 1
group by trunc(a.refund_insert_time, 'hh24')
+ case when to_char(refund_insert_time,'mi') >= '30' then numtodsinterval(30,'minute') else numtodsinterval(0,'minute') end;
select count(1), trunc(a.refund_insert_time, 'hh24')
+ case when to_char(refund_insert_time,'mi') >= '50' then numtodsinterval(50,'minute')
when to_char(refund_insert_time,'mi') >= '30' then numtodsinterval(30,'minute')
else numtodsinterval(0,'minute') end
from refund_record a
where a.refund_complete_time < sysdate - 1 and to_char(refund_insert_time,'yyyy-MM-dd hh24')='2016-07-07 09'
group by trunc(a.refund_insert_time, 'hh24')
+ case when to_char(refund_insert_time,'mi') >= '50' then numtodsinterval(50,'minute')
when to_char(refund_insert_time,'mi') >= '30' then numtodsinterval(30,'minute')
else numtodsinterval(0,'minute') end;
mysql