hive修改表操作与array类型

1.表重命名

alter table old_table_name rename to new_table_name;

2.修改表属性值

ALTER TABLE table_name SET TBLPROPERTIES table_properties;

table_properties: (property_name = property_value, property_name = property_value, ... )

如: ALTER TABLE table_name SET TBLPROPERTIES("EXTERNAL"="TRUE"); 修改内外部表属性

如: ALTER TABLE table_name SET TBLPROPERTIES ('comment' = new_comment); 修改表注释

3.添加分区

ALTER TABLE tablename ADD PARTITION (month='201101');(新分区是空的没数据,需要手动添加或上传数据文件)

修改分区值:

ALTER TABLE tablename PARTITION (month='202005') RENAME TO PARTITION (month='201105');

删除分区:ALTER TABLE tablename DROP PARTITION (month='201105');

4.添加列

ALTER TABLE table_name ADD COLUMNS (v1 int, v2 string);

修改列名

ALTER TABLE test_change CHANGE v1 v1new int;

删除表

DROP TABLE tablename;

清空表

TRUNCATE TABLE tablename;

1.array类型:Hive 支持的数据类型很多,除了基本的: int 、 string 、 varchar 、 timestamp 等

还有一些复杂的数据类型如array

建表语句:create table myhive.test_array(name string, work_locations array<string>)

row format delimited fields terminated by '\t' COLLECTION ITEMS TERMINATED BY ',';

导入数据:load data local inpath '/home/wtk/data_for_array_type.txt' into table test_array;

常用 array 类型查询:

-- 查询所有数据

select * from myhive.test_array;

-- 查询 loction 数组中第二个元素

select name, work_locations[1] location from myhive.test_array;

-- 查询 location 数组中元素的个数

select name, size(work_locations) location from myhive.test_array;

-- 查询 location 数组中包含 tianjin 的信息

select * from myhive.test_array where array_contains(work_locations,'tianjin');

相关推荐
武子康41 分钟前
Java-06 深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据仓库·sql·mybatis·springboot·springcloud
宅小海2 小时前
scala String
大数据·开发语言·scala
小白的白是白痴的白2 小时前
11.17 Scala练习:梦想清单管理
大数据
java1234_小锋2 小时前
Elasticsearch是如何实现Master选举的?
大数据·elasticsearch·搜索引擎
JessieZeng aaa4 小时前
CSV文件数据导入hive
数据仓库·hive·hadoop
Java 第一深情6 小时前
零基础入门Flink,掌握基本使用方法
大数据·flink·实时计算
MXsoft6186 小时前
华为服务器(iBMC)硬件监控指标解读
大数据·运维·数据库
PersistJiao7 小时前
Spark 分布式计算中网络传输和序列化的关系(二)
大数据·网络·spark·序列化·分布式计算
九河云7 小时前
如何对AWS进行节省
大数据·云计算·aws
FreeIPCC8 小时前
谈一下开源生态对 AI人工智能大模型的促进作用
大数据·人工智能·机器人·开源