hive基础语句

这篇博客主要记录了Hive中的一些基础操作,包括重命名表、修改表字段、新增列、更新列、新增分区和删除分区。在修改表字段时,详细介绍了如何改变列名、数据类型及添加注释。此外,还分享了如何使用Hive的时间处理函数计算两个日期之间的月份差,特别提示了日期格式的要求和floor函数的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(仅记录平时工作有用到的)

1、重命名表

alter table table_name rename to new_table_name;

2、修改表字段

alter table table_name change a1 a2 string comment ‘修改后的字段名为a2’ alter a3;

将列名a1修改为a2,数据类型为STRING并添加注释,最后将这一列放在col3后面。

3、新增列

alter table table_name add columns ( a1 string comment ‘这是新增的字段a1’);

4、更新列

alter table table_name replace columns ( a1 int a2 bigint , new_a1 string new_a2 string );

查询删除a1,a2,并使用new_a1,new_a2替换列。

5、新增分区

alter table table_name if not exists add partition (p_date =2019-10-10);

6、删除分区

alter table table_name drop if exists partition (p_date =2019-10-10);

7、时间处理函数

日期增加函数: date_add (string startdate, int days)
日期减少函数: date_sub (string startdate, int days)
日期相减: datediff(2015-04-09,2015-04-01); --(左减右)

Hive中计算两个日期之间的月份差
举例如下:

select floor(months_between(2018-07-01,2018-02-04)) from default.dual

返回值为: 4
注意:
1.日期格式为: yyyy-mm-dd;
2.如果日期格式为: yyyymmdd,则需要使用转换为yyyy-mm-dd

转换函数为:from_unixtime(unix_timestamp(20191010,'yyyymmdd'),'yyyy-mm-dd')

3.floor是取整函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值