IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 【Hive】修改 table、column -> 正文阅读

[大数据]【Hive】修改 table、column

目录

一、表

二、列

三、分区


一、表

1、重命名表重命名表的语句如下:

ALTER TABLE table_name RENAME TO new_table_name

2、修改表属性:

ALTER TABLE table_name SET TBLPROPERTIES (property_name = property_value, property_name = property_value,... )

3、修改表注释

ALTER TABLE table_name SET TBLPROPERTIES('comment' = new_comment);

4、拷贝表

CREATE TABLE app.table_new AS
SELECT * FROM app.table_old

5、删除表

drop table if exists table.table_name;

二、列

1、添加列

Add Columns 语法

一次增加一个列(默认添加为最后一列)
ALTER TABLE table_name ADD COLUMNS (new_col INT); 
可以一次增加多个列
ALTER TABLE table_name ADD COLUMNS (c1 INT,c2 STRING); 
添加一列并增加列字段注释
ALTER TABLE table_name ADD COLUMNS (new_col INT COMMENT 'a comment');

2、修改列

Change Column Name/Type/Position/Comment 语法

ALTER TABLE table_name CHANGE [COLUMN]
  col_old_name col_new_name column_type
    [COMMENT col_comment]
    [FIRST|AFTER column_name]

--- Change Column Name/Type/Position/Comment 案例
CREATE TABLE test_change (a int, b int, c int);
ALTER TABLE test_change CHANGE a a1 INT; --将 a 列的名字改为 a1.

--将 a 列的名字改为 a1,a 列的数据类型改为 string,并将它放置在列 b 之后。新的表结构为: b int, a1 string, c int.
ALTER TABLE test_change CHANGE a a1 STRING AFTER b; 

--将 b 列的名字修改为 b1, 并将它放在第一列。新表的结构为: b1 int, a string, c int.
ALTER TABLE test_change CHANGE b b1 INT FIRST; 

3、删除列

Replace Columns 语法

   原有Hive表test_change中有a,b,c,d,e这几个字段
   将从test_change中删除“d”列:
     ALTER TABLE test_change REPLACE COLUMNS (a int, b int,c string,e string);
   将d和e两列一起删除:
      ALTER TABLE test_change REPLACE COLUMNS (a int, b int,c string);

注意:如果列字段比较多,可以用show create table table_name; 显示建表语句,将字段一次性复制进来,删除哪些字段就直接去除即可.

三、分区

1、增加分区

--Add Partitions 语法
ALTER TABLE table_name ADD
  partition_spec [ LOCATION 'location1' ]
  partition_spec [ LOCATION 'location2' ] ...

partition_spec:
  : PARTITION (partition_col = partition_col_value,
        partition_col = partiton_col_value, ...)

--Add Partitions 语法案例:用户可以用 ALTER TABLE ADD PARTITION 来向一个表中增加分区。当分区名是字符串时加引号。

ALTER TABLE page_view ADD
    PARTITION (dt='2008-08-08', country='us')
      location '/path/to/us/part080808'
    PARTITION (dt='2008-08-09', country='us')
      location '/path/to/us/part080809';

2、修改分区

3、删除分区

---DROP PARTITION 删除分区
ALTER TABLE table_name DROP
    partition_spec, partition_spec,...

删除某分区数据

-- 删除dt = '2021-03-23'分区数据
SET mapred.output.compress = true;
SET hive.exec.compress.output = true;
SET mapred.job.priority = VERY_HIGH;
USE app;
ALTER TABLE table.table_name
DROP partition(dt = '2021-03-23') ;

4、拷贝分区表

https://blog.csdn.net/qq_43193797/article/details/99957879?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-7.control&dist_request_id=cf9fa99e-7862-4873-a61a-a70540b7f708&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-7.control

-- 拷贝同一结构
CREATE
	TABLE app.table_new LIKE app.table_old;
	
-- 拷贝分区表中的数据
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;
insert overwrite table app.table_new 
partition(dt, dt2)
select * from app.table_old;

5、查看分区结构

show partitions app.table_new

参考:?

Hive列操作汇总(添加/更新/删除/虚拟列)

Hive 修改table、column

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-17 15:27:43  更:2021-08-17 15:29:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 13:07:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码