我想将一列的内容复制到另一列。复制的内容应链接到字符串。
| company | new_company |
_____________________________
Google | The Google Company
在这里,"The"和"Company"作为字符串附加到内容中。
我尝试了很多,对我来说最有意义的是:
INSERT INTO table_name (copy_into_column)
SELECT CONCAT('The ', copy_from_column, ' Company')
FROM table_name
但是有了这个sql,我得到了这个错误:
#1292 - Incorrect datetime value: '0000-00-00 00:00:00' for column 'time' at row 1035
当然,我的右表中有几列,但实际上应该忽略还是?
我希望有人有一个想法。
你不是在寻找更新声明吗?
UPDATE table_name
SET copycol = CONCAT('The ', copy_from_column, ' Company')
关于您收到的错误:
您有一个显然是必需的时间戳字段。 从您共享的代码中,我看到您正在将新行插入数据库,我猜您不会填充其他列。
看起来还有另一列名为time
不接受空值。您可以尝试插入当前时间,例如:
INSERT INTO table_name (copy_into_column, time)
SELECT CONCAT('The ', copy_from_column, ' Company'), NOW()
FROM table_name;