2012-01-11 79 views
0

因此,我可以通过SELECT DATEDIFF(CURDATE(),expires)获得日期,但不完全是一个月,输出为一(1)。无论如何,这不是可能将其转换为MySQL月吗?我要检查,如果某一特定日期(如expires)为> = 1MySQL - 选择月份差异

回答

3
SELECT 
    ... 
FROM 
    tablename 
WHERE 
    expires<=DATE_SUB(CURDATE(), INTERVAL 1 MONTH); 

会得到你的所有行,一个月前已经过期或更早

0

使用下面的查询

Select * from 
    table_name where TIMESTAMPDIFF 
    (MONTH, 
    ADDDATE(LAST_DAY(SUBDATE(expires, INTERVAL 1 MONTH)), 1), 
    ADDDATE(LAST_DAY(SUBDATE(CURDATE(), INTERVAL 1 MONTH)), 1) 
)>=1