web-dev-qa-db-ja.com

SQL Developerを使用してOracle DBでレコードをカウントし、日付ごとにグループカウントする必要がある

次のようなテーブルがあります

   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を使用してこれを達成するのはどれほど難しいでしょうか

このようなテーブルを生成するためにいくつかのクエリを試しましたが、最終的には、日付ごとにカウントをグループ化せず、1日の平均トランザクション数が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
19
camarokris

私はこのクエリでこの結果を得ることができました:

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

trunc関数に注意してください。表示しなくても、DATEデータ型には時刻も保持されます。

ここ はフィドルです

47
A.B.Cade