MySQL 中生成的列中的日期时间错误

datetime error in generated columns in MySQL

我有一个 table 'tbl1' 其中有两个字段:

    日期时间类型的
  1. created_at 和 NULL 是允许的。
  2. num_days 类型为 INT(11),允许 NULL,默认值为 3。

我正在尝试创建 date 类型的生成列 'cut_off' 和 STORED 类型的列。

我正在使用这个命令:

alter table tbl1 add column cut_off date GENERATED ALWAYS AS (DATE(created_at + num_days)) STORED; 

我收到这个错误:

ERROR 1292 (22007): Incorrect datetime value: '20181119063562'

但是在这个查询中:

select distinct(DATE(created_at + num_days)) from tbl1;

运行 很好,没有错误。

任何帮助将不胜感激。

你添加的是秒而不是天,一分钟不能有 62 秒

也许试试

DATE(created_at + INTERVAL num_days DAY)