将列插入表中,将现有列值用作现有行的默认值

Maa*_*man 1 mysql insert

我想在现有表中添加一列。

ALTER TABLE statuses ADD updated int(11) default NULL
Run Code Online (Sandbox Code Playgroud)

上一行将所需的列添加到我的表中,而不是将NULL作为默认值,我想使用“创建”列的值。因此,每一行都将获得“已更新”列,并以“已创建”列填充其“自己的”列。

我怎样才能做到这一点?

例:

id - created
1  - 12345678
2  - 87654321
3  - 12121212
Run Code Online (Sandbox Code Playgroud)

现在插入新列“ updated”,该表应类似于:

id - created - updated
1  - 12345678 - 12345678 
2  - 87654321 - 87654321
3  - 12121212 - 12121212
Run Code Online (Sandbox Code Playgroud)

Qua*_*noi 5

您不能,不能仅凭一条语句。

您将必须运行两个语句:

ALTER TABLE statuses ADD updated int(11);

UPDATE  statuses
SET     updated = created;
Run Code Online (Sandbox Code Playgroud)