我在oracle中有一个表,其中包含如下数据
created_date的详细信息 2016年1月1日04:45 abcd 2016年1月1日04:47 efgh 2016年1月1日04:53 ijkl 2016年1月1日04:54 mnop 2016年1月1日4:58 qrst
....等等
我希望能够每10分钟计算一次表中的行数
时间计数 04:40 2 04:50 3
创建日期=时间戳,详细信息= varchar
我该怎么办?
谢谢
您可以使用TO_CHAR和SUBSTR来构建时间字符串:
select substr(to_char(created_date, 'hh24:mi'), 1, 4) || '0' as created, count(*) from mytable group by substr(to_char(created_date, 'hh24:mi'), 1, 4) || '0' order by substr(to_char(created_date, 'hh24:mi'), 1, 4) || '0';
或使用子查询(派生表),以便只写一次日期表达式:
select created, count(*) from ( select substr(to_char(created_date, 'hh24:mi'), 1, 4) || '0' as created from mytable ) group by created order by created;