0

我想将一列的内容复制到另一列。复制的内容应该链接到一个字符串。

|  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

当然,我的右表中有几列,但实际上应该忽略还是?

我希望有人有一个想法。

4

2 回答 2

0

看起来有另一个名为time不接受空值的列。您可以尝试插入当前时间,例如:

INSERT INTO table_name (copy_into_column, time)
    SELECT CONCAT('The ', copy_from_column, ' Company'), NOW()
    FROM table_name;
于 2017-08-15T10:00:22.070 回答
0

你不是在寻找更新声明吗?

UPDATE table_name
SET copycol = CONCAT('The ', copy_from_column, ' Company')

关于您收到的错误:

您有一个显然是必需的时间戳字段。从您共享的代码中,我看到您正在将新行插入数据库,我猜您没有填充其他列。

于 2017-08-15T10:54:09.573 回答