Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.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中生成的列中存在datetime错误_Mysql_Mysql 5.7 - Fatal编程技术网

MySQL中生成的列中存在datetime错误

MySQL中生成的列中存在datetime错误,mysql,mysql-5.7,Mysql,Mysql 5.7,我有一个表“tbl1”,其中有两个字段: 在类型为datetime且允许为NULL的位置创建了\u 允许INT(11)和NULL类型的num_天,默认值为3 我正在尝试创建类型为date的生成列“cut_off”和存储类型的列 我正在使用此命令: alter table tbl1 add column cut_off date GENERATED ALWAYS AS (DATE(created_at + num_days)) STORED; 我得到这个错误: 错误1292(22007):日期

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

  • 在类型为datetime且允许为NULL的位置创建了\u
  • 允许INT(11)和NULL类型的num_天,默认值为3 我正在尝试创建类型为date的生成列“cut_off”和存储类型的列

    我正在使用此命令:

    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;
    
    运行良好,没有出现错误


    非常感谢您的帮助。

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

    也许试试

    DATE(created_at + INTERVAL num_days DAY)
    

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

    也许试试

    DATE(created_at + INTERVAL num_days DAY)
    

    为什么此查询“从tbl1中选择不同的(日期(创建时间+num_天))”它可能适用于某些值,但对于其他值,它会产生NULL作为错误,MYSQL反对ALTER查询中的错误为什么这个查询“从tbl1中选择distinct(DATE(created_at+num_days))”它可能对某些值起作用,但对其他值则产生NULL错误,MYSQL反对ALTER查询中的错误