0
私はSQLの初心者ですが、これは私が考えることができるよりずっと簡単です。 私は、テーブルの最新のレコードを取得し、最新のレコードをステータス別に数えます。いくつかの能力がステータスと月/年で数を返すOracle SQL Developer Query - 最新のレコードを選択し、別の列で数える
would be a bonus.
So table is the following:
ID STATUS TIMESTAMP
1 ACTIVE 04/19/2016
1 PENDING 04/18/2016
2 ACTIVE 04/08/2016
2 PENDING 04/01/2016
3 PENDING 04/07/2016
4 PENDING 12/01/2015
5 CANCELLED 12/30/2015
私は私が望んでいたクエリを実行すると、以下:私は、次を使用して、最新のレコードを取得することができています
ACTIVE 04/2016 2
PENDING 04/2016 1
CANCELLED 12/2015 1
:
Select id,
status,
date from (
Select TABLE_A,
status,
date,
row_number() over (partition by id order by date Desc) col
From TABLE_A) ps
Where ps.col = 1;
ご利用いただきありがとうございます。
これは素晴らしいです。私の特定のシナリオでは、ちょうどそれを微調整しなければなりませんでしたが、これはとても助けになりました。私の変更は以下の通りです ステータスを選択すると、to_char(status_date、 'YYYY-MM')はYYYYMM、count(*) から(状態、日付、)(se_number 〜からfrom TABLE_A )ps ここで、seqnum = 1 ステータス別のグループ、to_char(date、 'YYYY') 2 asc、1 ascの順。 – Mlover