2012-10-12 53 views
1

如何獲取兩列之間的日期範圍?如何獲取兩列之間的日期範圍?

SELECT 
    ccm.`date_from` 
    , ccm.`date_to` 
    , ccd.`rate` 
FROM 
    `currency_conversion_master` ccm 
    , `currency_conversion_details` ccd 

WHERE ccm.conv_m_id=ccd.conv_m_id AND DATE(date_from)>=DATE('2012-10-12') AND DATE(date_to) <= DATE('2012-10-14') 

這樣查詢不過濾記錄當我把2012-10-13。

我的意思是

DATE(date_from)>=DATE('2012-10-13') AND DATE(date_to) <= DATE('2012-10-14') 

我如何做到這一點?

這是數據庫結構與數據

date_from date_to 
2012-10-12 2012-10-14 
2012-10-15 2012-10-19 
2012-10-20 2012-10-30 
+0

使用[BETWEEN](http://www.tutorialspoint.com/mysql/mysql-between-clause.htm )函數 –

+0

,我也得到了這個答案... WHERE ccm.conv_m_id = ccd.conv_m_id AND DATE(date_from)<= DATE('2012-10-13')AND DATE(date_to)> = DATE('2012-10 -14') –

+0

感謝所有... –

回答

4

使用

SELECT 
    ccm.`date_from`, 
    ccm.`date_to`, 
    ccd.`rate` 
FROM 
    `currency_conversion_master` ccm 
INNER JOIN `currency_conversion_details` ccd 
ON ccm.conv_m_id=ccd.conv_m_id 
WHERE '2012-10-12' between DATE(date_from) and DATE(date_to) 
+0

thanx ......................... –

相關問題