は、以下のサンプルテーブルである一方、後方レコードをプルする必要があるは、日付範囲の間でレコードを照会
今私のサービスは、ID 1、2のための評価を問い合わせるれid date rating
-----------------------
1 15-11-2015 A
1 18-11-2015 A
1 05-12-2015 B
2 05-11-2015 A
2 21-11-2015 A
2 05-12-2015 A
3 25-11-2015 B
3 05-12-2015 B
.....
、3日間(も数でより多くのことができます) 01-DEC-2015〜10-DEC-2015この範囲内のレコードを取得するためにselectクエリを実行すると、05-DEC-2015のレコードは1つだけです。
JAVA側では、10-DECまで同じデータを入力することができます。逆の記入をするためには、必ずしもすべてのIDに対して同じ日付ではない各IDについて、以前のレコードを引き出す必要があります(01-DEC-2015より前のレコードを1つだけ取り出します)。これについての質問や質問がすべて可能ではない場合は、SPを使って私に手伝ってください。
必要な出力は以下のとおりです。開始日(2015年1月12日)の格付けがないとして2015年1月12日
1,2- IDの2015年10月12日に1 18-11-2015 A
1 05-12-2015 B
2 21-11-2015 A
2 05-12-2015 A
間の評価のために、私は、各IDの前の評価を引っ張っする必要があります。
最初は次のように試しました。これは、評価日がすべてのIDで同じであってもうまくいきましたが、残念ながらそうではありません。
Select *
from ratings rr
where rr.id in (1, 2)
and rr.date between (Select max(rrr.date)
from ratings rrr
where rrr.date <= to_date('01-12-2015','dd-MM-yyyy'))
and to_date('10-12-2015','dd-MM-yyyy')
あなたは必要な結果を投稿できますか? – Aleksej
質問を必要な出力で更新しました。 – mani