比较存储为datetime时的MySQL日期

时间:2012-06-27 09:51:38

标签: php mysql

我尝试了几个mySQL查询来比较存储为datetime的日期列。我需要创建几个不同的queries,具体取决于对表单采取的操作。下面是我创建的sql的示例:

CREATE OR REPLACE VIEW franchise_filter AS SELECT * FROM `c_data`.`franchise_leads`    WHERE `lead_added` BETWEEN UNIX_TIMESTAMP(DATE_SUB(now(),INTERVAL 3 Months)) AND UNIX_TIMESTAMP(now())

CREATE OR REPLACE VIEW franchise_filter AS SELECT * FROM `c_data`.`franchise_leads` WHERE `lead_added` <= 2012-06-27 00:00:00

在第二个示例中,日期由PHP提供:

date("Y-m-d 00:00:00", strtotime($date_now, "+6 months"))

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:2)

你非常接近:使用

... WHERE `lead_added` <= "2012-06-27 00:00:00"

(注意引号)和

... WHERE `lead_added` BETWEEN DATE_SUB(NOW(),INTERVAL 3 MONTH) AND NOW()

答案 1 :(得分:0)

BETWEEN NOW() + INTERVAL 3 Months AND NOW()

答案 2 :(得分:0)

尝试使用DATE()功能,例如 -

SELECT * FROM table WHERE DATE(date_time_field) <= '2012-06-27';

此外,您可以使用CURRENT_DATE()功能而不是NOW()。