Oracle-10g

需要在 Oracle 上按日期計算記錄和分組計數

  • October 31, 2012

我有一張如下表

  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”作為計數。我可能過於復雜了。但我想要一些簡單的東西,我可以在一個日期範圍內每天提取交易量。

除非我遺漏了什麼,否則您的查詢將是這樣的:

select created, count(*) CreatedCount
from yourtable
group by created
order by created;

請參閱帶有展示的 SQL Fiddle

或者,如果您有與日期相關的時間,您可以使用TRUNC

select trunc(created), count(*) CreatedCount
from yourtable
group by trunc(created)
order by trunc(created);

請參閱帶有展示的 SQL Fiddle

引用自:https://dba.stackexchange.com/questions/27902