在我的項目,我使用名爲「賠償」之類帶日期問題的PHP和MySql ...?
+--------------------------------------------------------------+
| Id | receiver_Id | compensation | date |
|--------------------------------------------------------------|
| 1 | 5 | 50% | 2011-02-15 12:15:00 |
| 2 | 3 | 40% | 2011-04-05 18:35:00 |
| 3 | 3 | 30% | 2011-04-25 06:24:00 |
| 4 | 5 | 45% | 2011-04-21 19:05:00 |
| 5 | 5 | 60% | 2011-04-30 12:05:00 |
.......................
這裏date represents that the compensation is changed on that particular date
表......。對於receiver 5
,賠償金額爲50%before Feb 15 2011. And the compensation is
45%從
the date
2011年2月15日12:15:01至2011年4月21日19:05:00。等等....
這裏當我月APRIL 2011
創建invoice
爲receiver 5
,我必須使用compensation as 45%
直到日期21 April 2011
和22 April 2011 to 30 April 2011 I have to use 60%
作爲補償......
但如何獲得賠償一個月或兩個日期之間的賠償可能會在一個月內修改多次,如ID 4和5顯示.......
請幫我writing SQL
爲上述或我必須使changes
上table structure
使它簡單......?
在此先感謝
以及date_from和DATE_TO是一樣的早期給予和後者的參數相同字段在BETWEEN子句中進行查詢,如果補償沒有改變,則它是當前有效的補償。最新日期在此結構中始終有效,因此無需更改結構 – 2011-04-26 08:05:19
+1。但我會'SELECT * FROM補償現在()之間date_from和date_to' – Nemoden 2011-04-26 08:06:30
@Nemoden:OP想要查詢適用於整個月的所有行,而不是那些只適用於一個時刻(如NOW()) – 2011-04-26 08:13:44