1

运行 MySql 和 Yii 我需要更改当前查找当月记录的关系查询,以查找过去 45 天的所有记录。

这是我当前的查询:

    'itemCount' => array(self::STAT, 'Item', 'ItemId', 
              'condition'=>'SUBSTRING(DateMoved FROM 1 FOR 7) = 
              SUBSTRING(current_date - INTERVAL 0 month FROM 1 FOR 7)  
              AND Status="W"'),

我尝试过修改它并使用 strtotime 尝试了一种不同的方法,但两种方法都不起作用。使用 self::STAT 可以找到过去 45 天的所有记录吗?

4

3 回答 3

1

使用此查询获取过去 45 天的记录

SELECT * FROM table_name t 
WHERE t.DateMoved >= DATE_ADD(CURDATE(), INTERVAL -45 DAY);

使用您的代码

'itemCount' => array(self::STAT, 'Item', 'ItemId', 
'condition'=>'DateMoved >= DATE_ADD(CURDATE(), INTERVAL -45 DAY)
AND Status="W"'),
于 2013-05-07T06:58:53.633 回答
0

要获取最近 N 天的记录,您可以使用简单的 SQL 查询条件,如下所示:

DateMoved >= DATE_SUB(NOW(), INTERVAL 45 DAY)

换句话说 - 比较记录日期与当前日期减去 45 天

于 2013-05-07T07:07:22.817 回答
0
INTERVAL 45 DAY AND CURDATE()

如果您还有其他问题,请告诉我。

于 2013-05-07T06:58:02.843 回答