需要使用sql developer在oracle db上按日期计算记录和组计数

时间:2012-10-30 20:04:08

标签: oracle count oracle10g group-by oracle-sqldeveloper

我有一张如下表格

   ID                created    sent    type
-----------------------------------------------------
0001463583000051783  31-JUL-12  1   270
0081289563000051788  01-AUG-12  1   270
0081289563000051792  01-AUG-12  1   270
0081289563000051791  01-AUG-12  1   270
0081289563000051806  01-AUG-12  1   270
0001421999000051824  06-AUG-12  1   270
0001421999000051826  06-AUG-12  1   270
0001464485000051828  06-AUG-12  1   270
0082162128000051862  09-AUG-12  2   278
0082162128000051861  09-AUG-12  2   278
0022409222082910259  09-AUG-12  3   278

我希望输出

以下内容
created     Count
---------------------
31-JUL-12   1
01-AUG-12   4
06-AUG-12   3
09-AUG-12   3

使用Oracle 10g上的SQL Developer实现这一目标有多难

我已经尝试了几个查询来生成这样一个表,最后它没有按日期对计数进行分组,当我们每天平均5000-10000个事务时,只给我一个'1'计数。我可能过于复杂了。但我想要一些简单的事情,我可以在日期范围内每天提取交易量。

当我运行查询时,目前发生的事情是

created     Count
---------------------
31-JUL-12   1
01-AUG-12   1
01-AUG-12   1
01-AUG-12   1
01-AUG-12   1
06-AUG-12   1
06-AUG-12   1
06-AUG-12   1
09-AUG-12   1
09-AUG-12   1
09-AUG-12   1

1 个答案:

答案 0 :(得分:47)

我设法通过此查询获得此结果:

select trunc(created), count(*)
from table1
group by trunc(created)

注意trunc函数,即使你没有显示它,DATE数据类型也会保留时间

Here是一个小提琴