在MySQL中向时间戳添加时间的更好方法

在MySQL中向时间戳添加时间的更好方法,mysql,Mysql,我想在时间戳上加上5分钟: SELECT timestamp+300 FROM table 工作时间为分钟(5*60=300),但如果我想加上一个月或一年,我不能用秒计算 我提出了这个问题: SELECT UNIX_TIMESTAMP(FROM_UNIXTIME(timestamp) + INTERVAL 5 MINUTE) FROM table 所以我也可以用几年: SELECT UNIX_TIMESTAMP(FROM_UNIXTIME(timestamp) + INTERVAL 2 YE

我想在时间戳上加上5分钟:

SELECT timestamp+300 FROM table
工作时间为分钟(5*60=300),但如果我想加上一个月或一年,我不能用秒计算

我提出了这个问题:

SELECT UNIX_TIMESTAMP(FROM_UNIXTIME(timestamp) + INTERVAL 5 MINUTE) FROM table
所以我也可以用几年:

SELECT UNIX_TIMESTAMP(FROM_UNIXTIME(timestamp) + INTERVAL 2 YEAR) FROM table

这是“解决方案”还是有更优雅的方法?

是的。要么这样,要么从服务器端语言开始,所以我必须将时间戳转换为日期,再转换回时间戳。最好是一个日期字段。MYSQL是智能的,您还可以使用date\u ADD:SELECT UNIX\u TIMESTAMP(TIMESTAMP ADD(DAY,5,'2003-01-02'))