1

2つの列の間の日付範囲を取得するにはどうすればよいですか?

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
4

1 に答える 1

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)
于 2012-10-12T12:05:15.080 に答える