2011-12-20 71 views
0

enter image description hereMysql的查找兩個日期欄

從上面的表格, 之間開始和結束日期範圍內發生,我將開始和結束日期之間進行搜索。例如「2011-12-21」至「2011-12-23」。 從上面的圖像中,第5和第6行將在此日期範圍內。即,第5行將包括第21和第22 [2日期],並且第6行包括第23 [1日期]。因此,我的結果應該是2X300 [即,第五排的每週率] + 1X350 [即,第六排的每週率]。

即,[950]

請人幫助.. 謝謝,

回答

1
SELECT 
    SUM(
    IF(DATEDIFF(least(validto, '2011-12-23'), 
       greatest(validfrom, '2011-12-21')) >= 0, 
     DATEDIFF(least(validto, '2011-12-23'), 
       greatest(validfrom, '2011-12-21')) + 1, 
     NULL) * rateperday 
) as total 
FROM thedata; 
+0

哇..感謝ü 'newtoover' ..我會去檢查不同的組合,然後將標誌着UR答案正確..謝謝你..美麗.. – sathish 2011-12-20 12:49:14

相關問題