MySQL中生成的列中的datetime错误

时间:2019-07-03 10:21:34

标签: mysql mysql-5.7

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

  1. datetime类型的created_at允许为NULL。
  2. 类型为INT(11)且为NULL的num_days天,默认值为3。

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

我正在使用以下命令:

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

我收到此错误:

  

错误1292(22007):日期时间值不正确:'20181119063562'

但是在此查询中:

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

运行正常,没有任何错误。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

您要添加秒而不是天,并且一分钟不能有62秒

也许尝试

DATE(created_at + INTERVAL num_days DAY)