当前位置:  开发笔记 > 编程语言 > 正文

在配置单元中,有没有办法指定添加新列的列之间?

如何解决《在配置单元中,有没有办法指定添加新列的列之间?》经验,为你挑选了1个好方法。

我可以

ALTER TABLE table_name ADD COLUMNS (user_id BIGINT)

将新列添加到我的非分区列的末尾和分区列之前.

有没有办法在我的非分区列中的任何位置添加新列?例如,我想把这个新列user_id作为我表的第一列



1> Reena Upadhy..:

是的,可以更改列的位置,但只有在使用CHANGE COLUMN在表中添加后才能更改列的位置

在您的情况下,首先使用以下命令将列user_id添加到表中:

ALTER TABLE table_name ADD COLUMNS (user_id BIGINT);

现在将user_id列作为表中的第一列,使用带有FIRST子句的change列:

 ALTER TABLE table_name CHANGE COLUMN user_id user_id BIGINT first;

这会将user_id列移动到第一个位置.

同样,如果要在任何其他列之后移动指定的列,则可以使用After而不是first.比如说,我想在user_id列之后移动dob列.然后我的命令是:

ALTER TABLE table_name CHANGE COLUMN dob dob date AFTER user_id;

请注意,此命令仅更改元数据.如果要移动列,则数据必须已与新架构匹配,或者必须通过其他方式更改它以匹配.

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有