mysql alter table add column before_性能MySQL ALTER TABLE ADD COLUMN AFTER COLUMN – 在一个大表上...

这里是我会做的:

CREATE TABLE newtable LIKE oldtable;

ALTER TABLE newtable ADD COLUMN columnname INT(10) UNSIGNED NOT NULL DEFAULT 0;

我不知道你的列的类型。我给一个例子与INT。现在这里你可以指定WHERE你想添加这个新的列。默认情况下,它会将它添加到末尾,除非你指定AFTER关键字,如果你提供它,你将不得不在你将插入的顺序指定,否则你需要把它放在结尾。

INSERT INTO newtable SELECT field1, field2, field3 /*etc...*/, newcolumn = 0 FROM oldtable;

OR,如果您在列之间添加它:

# eg: ALTER TABLE newtable ADD COLUMN columnname INT(10) UNSIGNED NULL AFTER field2;

INSERT INTO newtable SELECT field1, field2, newcolumn = 0, field3 /*etc...*/ FROM oldtable;

如果要批量执行,可以添加where子句。

一旦所有的记录都在那里

DROP TABLE oldtable;

RENAME TABLE newtable to oldtable;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值