将MySql日期更新为给定月的最后一天

时间:2018-11-23 10:40:15

标签: mysql

我在表中有2个日期字段,我想将第二个日期字段更新为比第一个字段早2个月的最后一天。

例如:

Date1 = '2018-01-01'时,我想要date2 = '2018-03-31'

Date1 = '2018-02-01'时,我想要date2 = '2018-04-30'

这可以用一个命令完成吗?

2 个答案:

答案 0 :(得分:2)

可以。有LAST_DAY()函数和INTERVAL语法,可让您增加2个月的时间。

这应该有效:

UPDATE table_name SET date2 = LAST_DAY(date1 + INTERVAL 2 MONTH);

答案 1 :(得分:0)

您可以在下面尝试

select date1, last_day(date_add(date,interval 2 month)) as date2
from tablename