Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将MySql日期更新到给定月份的最后一天_Mysql - Fatal编程技术网

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

将MySql日期更新到给定月份的最后一天,mysql,Mysql,我在一个表中有两个日期字段,我想在第一个字段之前将第二个字段更新到2个月的最后一天 例如: 当Date1='2018-01-01'时,我想要date2='2018-03-31' 当Date1='2018-02-01'时,我想要date2='2018-04-30' 这可以在一个命令中完成吗?您可以在下面尝试 select date1, last_day(date_add(date,interval 2 month)) as date2 from tablename 是的,你可以。有函数,还有IN

我在一个表中有两个日期字段,我想在第一个字段之前将第二个字段更新到2个月的最后一天

例如:

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

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

这可以在一个命令中完成吗?

您可以在下面尝试

select date1, last_day(date_add(date,interval 2 month)) as date2
from tablename
是的,你可以。有函数,还有
INTERVAL
语法,允许您添加2个月

这应该起作用:

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