我有两个字段,一个是购买日期,另一个是项目的生命周期。我想知道是否有任何方法可以确定当前日期是否超过了生命周期。所以,几乎如果MySQL可以测试current_date是否> purchase_date + lifespan。
购买日期是格式为yyyy-mm-dd的日期,寿命是月份的整数。有没有办法执行此计算?
答案 0 :(得分:4)
您可以尝试:
SELECT * FROM table WHERE NOW() > (purchase_date + INTERVAL lifespan MONTH)
但你可以使用
SELECT * FROM table WHERE NOW() > date_add(purchase_date, INTERVAL lifespan MONTH)
或DATEDIFF
SELECT * FROM table WHERE DATEDIFF(NOW(), purchase_date) / 30 < lifespan
答案 1 :(得分:1)
如何使用DATEDIFF
?
您的查询将是这样的:
SELECT * FROM table WHERE DATEDIFF(NOW(), purchase_date) < lifespan
请原谅我,如果我的语法稍微偏离,我现在没有要测试的SQL实例
答案 2 :(得分:0)
是的,可以使用MySQL date and time functions。