下記の様なテーブルがあります。
T_ODER
名コ 氏名 配達日 入金フラグ
0001 aaa 2020/11/02 0
0001 aaa 2020/12/01 1
0001 aaa 2021/01/05 1
0001 aaa 2021/02/01 0
0001 aaa 2021/03/01 0
0002 bbb 2020/11/13 0
0002 bbb 2020/12/10 0
0002 bbb 2021/01/03 2
0002 bbb 2021/02/01 0
0002 bbb 2021/03/01 0
0003 ccc 2020/11/02 0
0003 ccc 2020/12/01 0
0003 ccc 2021/01/05 1
0003 ccc 2021/02/01 0
0003 ccc 2021/03/01 0
そこで下記に合致するレコードを抜き出したいです。
・締日 ≧ 配達日を満たす直近の2レコード(締日直近の2レコード)の入金フラグが全て0の人について、締日 < 配達日(締日以降)のレコードを抜き出す
締日=2021/01/03ではこの様な結果を得たいです。
0003 ccc 2021/01/05 1
0003 ccc 2021/02/01 0
0003 ccc 2021/03/01 0
SQLで
Select * from ( select * FROM T_ODER order by 配達日 desc )
where 入金フラグ = 0 AND rownum <=2;
で前半の条件は満たせるかなとは思ったのですが、全ての条件を満たす様なSQLが作成出来ませんので、ご教授下さい
(SI Object BrowserでORACLE 11Gを操作しています)
回答1件
あなたの回答
tips
プレビュー