使用“之间”与选择“日期”

时间:2014-07-15 13:58:37

标签: mysql sql datetime subquery between

我正在努力做的事情是:

输入日期1和日期2。 日期1和日期2可以像完整日期格式(YYYY-MM-DD)或只是年份(YYYY)或甚至像YYYY-MM

所以我只尝试了一个日期(无论格式如何,它都能完美运行):

SELECT * FROM produit WHERE date_commande like "%'.$filtre_Date1.'%

现在我想尝试2个日期:

SELECT * FROM produit WHERE date_commande BETWEEN (SELECT date_commande FROM produit WHERE date_commande like "%'.$filtre_Date1.'%) AND (SELECT date_commande FROM produit WHERE date_commande like "%'.$filtre_Date2.'%)

哪里有" 2014-01" in" $ filtre_Date1"和" 2014-03" in" $ filtre_Date2"

我的问题:

我的2子选择返回超过1行。

所以我想必须有另一种方法来做一个有点像"喜欢"在2"参数之间" ?

感谢。

1 个答案:

答案 0 :(得分:1)

这是你正在寻找的逻辑吗?

SELECT *
FROM produit
WHERE date_format(date_commande, '%Y-%m-%d) BETWEEN $filtre_Date1 AND $filtre_Date2;

听起来你想要在日期的字符串形式上正确地进行比较,其中日期的格式为YYYY-MM-DD。