【问题标题】:Drop column in Impala在 Impala 中删除列
【发布时间】:2023-01-24 00:47:52
【问题描述】:

我想在 Impala 中删除整个“索引”列(列名和值):

index case_id customer_id
1 A xxx56

我使用了这段代码:

ALTER TABLE DBName.Tablename
DROP COLUMN index;

结果是这样的:

case_id customer_id
1 A

我该如何解决这个问题?

【问题讨论】:

  • 实际问题是什么?您的代码甚至可以运行吗?

标签: hadoop hive impala alter-table


【解决方案1】:

删除带有 ALTER TABLE mytab DROP COLUMN col 的列将仅更改元数据,底层数据保持不变。这意味着尽管数据完好无损,但您已经移动了列。

唯一的解决方案是备份、删除和重新创建表。

create table DBName.Tablename_tmp as select case_id,    customer_id from DBName.Tablename; -- just backup table with new structure.
drop table DBName.Tablename;
create table DBName.Tablename as select * from DBName.Tablename_stg;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-05
    • 2018-03-11
    • 1970-01-01
    • 2020-03-21
    • 2021-07-17
    相关资源
    最近更新 更多