テーブルAに以下のデータがあり、これを1 つの計算列と共にテーブルBに挿入する必要があります。
表 A:
Account_No | Balance | As_on_date
1001 |-100 | 1-Jan-2013
1001 |-150 | 2-Jan-2013
1001 | 200 | 3-Jan-2013
1001 |-250 | 4-Jan-2013
1001 |-300 | 5-Jan-2013
1001 |-310 | 6-Jan-2013
表 B:
表 B には、残高がマイナスになった日付と、マイナスになった日付が表示されます。
したがって、2013 年 1 月 6 日の場合、このテーブルには以下のデータが表示されます。
Account_No | Balance | As_on_date | Days_passed | Start_date
1001 | -310 | 6-Jan-2013 | 3 | 4-Jan-2013
ここでは、古いエントリからではなく、最近残高がマイナスになった日を何日も指定しないでください。
経過した日数と、残高がマイナスになった開始日を取得する SQL クエリを作成する必要があります。
分析関数を使用してクエリを作成しようとしましたLag
が、成功しません。
LAG
関数を使用してトラバース バックすることにより、負の残高の最初のインスタンスを確認するにはどうすればよいですか?
関数でさえfirst_value
試してみましたが、負の値に基づいて分割する方法がわかりませんでした。
これに関するヘルプや指示は本当に役に立ちます。