开发者社区 问答 正文

MaxCompute的表的操作是什么?

MaxCompute的表的操作是什么?

展开
收起
游客qzzytmszf3zhq 2021-12-08 17:46:07 689 分享 版权
1 条回答
写回答
取消 提交回答
  • -- 查看表
    DESC <table_name>;
    DESC extended <table_name>; --查看外部表信息。
    
    -- 查看建表语句
    SHOW CREATE TABLE <table_name>;
    
    -- 删除表
    -- 删除外部表时,OSS上的数据不会被删除。跟Hive一样意思。
    DROP TABLE [IF EXISTS] table_name;
    
    -- 重命名表
    ALTER TABLE table_name RENAME TO new_table_name;
    
    -- 修改表Owner
    ALTER TABLE table_name CHANGEOWNER TO 'ALIYUN$xxx@aliyun.com';
    
    -- 修改表的注释
    ALTER TABLE table_name SET COMMENT 'new coments for table sale_detail';
    
    -- 修改表的修改时间
    -- 此时,MaxCompute会认为表的数据有变动,生命周期的计算会重新开始。
    ALTER TABLE table_name TOUCH;
    
    -- 修改表的Hash Clustering属性
    ALTER TABLE table_name     
    [CLUSTERED BY (col_name [, col_name, ...]) [SORTED BY (col_name [ASC | DESC] [, col_name [ASC | DESC] ...])] INTO number_of_buckets BUCKETS]
    -- 去除表的Hash Clustering属性的语法格式如下
    ALTER TABLE table_name NOT CLUSTERED;
    
    -- 清空非分区表里的数据
    TRUNCATE TABLE table_name;
    
    -- 清空分区表里的数据
    ALTER TABLE table_name DROP PARTITION(dt = '??????');
    
    -- 强制删除表数据(分区数据),可以加purge
    DROP TABLE table_name PURGE;
    ALTER TABLE table_name DROP PARTITION(dt = '??????') PURGE;
    
    -- 备份表
    
    
    2021-12-08 17:46:52
    赞同 展开评论