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');

相关推荐
瑞华丽PLM7 分钟前
电子行业国产PLM系统功能差异化对比表
大数据·plm·国产plm·瑞华丽plm·瑞华丽
深圳市恒星物联科技有限公司1 小时前
水质流量监测仪:复合指标监测的管网智能感知设备
大数据·网络·人工智能
是做服装的同学2 小时前
如何选择适合的服装企业ERP系统才能提升业务效率?
大数据·经验分享·其他
藦卡机器人3 小时前
国产机械臂做的比较好的品牌有哪些?
大数据·数据库·人工智能
代码改善世界3 小时前
CANN深度解构:中国AI系统软件的原创性突破与架构创新
大数据·人工智能·架构
java-yi4 小时前
Elasticsearch(ES)核心用法与实战技巧分享
大数据·elasticsearch·搜索引擎
星辰_mya4 小时前
Es之脑裂
大数据·elasticsearch·搜索引擎
搞科研的小刘选手4 小时前
【EI稳定检索会议】第七届计算机信息和大数据应用国际学术会议(CIBDA 2026)
大数据·acm·学术会议·计算机工程·计算机信息·大数据应用·信息与技术
成长之路5145 小时前
【数据集】地级市公共安全基建省内横向压力(2015-2025)
大数据