+-------+-----------+------+----------------------+----------------------+
|RATE_ID|DESCRIPTION|CHARGE|FROM_DATE |TO_DATE |
+-------+-----------+------+----------------------+----------------------+
|1 |small |100 |01/01/2014 12:00:00 AM|31/03/2014 12:00:00 AM|
+-------+-----------+------+----------------------+----------------------+
|2 |mediam |200 |01/04/2014 12:00:00 AM|04/04/2014 12:00:00 AM|
+-------+-----------+------+----------------------+----------------------+
|3 |big |300 |05/04/2014 12:00:00 AM|31/12/2014 12:00:00 AM|
+-------+-----------+------+----------------------+----------------------+
中存在讓的日期範圍內費用的樣品臺以上,我會像 start_date = to_date('30/mar/2014','dd/mon/yyyy')
和
end_date = to_date('05/apr/2014','dd/mon/yyyy')
的輸入。發現號的日期範圍
所以輸入日期包含在兩天的收費100(rate_id = 1), 4天的收費200和1天的收費300以及合計1300
。
是否有任何簡單的方法來找到給定範圍內存在的天數,以便我可以計算total_charge。因爲目前我正在使用PL/SQL來使用loop
來查找存在。
作爲一個整體: 從輸入,
30 and 31st march belongs to small(100 charge) => 100* 2 = 200
1, 2, 3, 4 of april belongs to medium(200 charge) => 200*4 = 800
5th april belongs to big (300 charge) => 300*1 = 300
so
the total:= 200 + 800 + 300 = 1300
預先感謝。
嘗試建立在函數的oracle turncate()http://www.oracle-base.com/articles/misc/oracle-dates-timestamps-and-intervals.php – zee
對不起,但我不明白你的計算。對於3月3日的開始日期,將會有28天,這應該按照rate_id = 1來收取,這使得2800.不是嗎? – Incognito
對不起,我修正了計算。請再看一遍 – ajmalmhd04