0

我尝试了几个 mySQL 查询来比较存储为日期时间的日期列。我需要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"))

任何帮助将不胜感激。

4

3 回答 3

2

你非常接近:使用

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

(注意引号)和

... WHERE `lead_added` BETWEEN DATE_SUB(NOW(),INTERVAL 3 MONTH) AND NOW()
于 2012-06-27T09:54:53.393 回答
0
BETWEEN NOW() + INTERVAL 3 Months AND NOW()
于 2012-06-27T09:55:59.133 回答
0

尝试使用DATE()函数,例如 -

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

此外,您可以使用CURRENT_DATE()函数代替 NOW()。

于 2012-06-27T09:57:15.610 回答