Hive学习之Hive数据类型

本文介绍了Hive的各种数据类型,包括数值类型(如DECIMAL,提供高精度和广泛范围),字符串类型(如VARCHAR和CHAR),日期/时间类型(如TIMESTAMP和DATE),以及复合类型(如ARRAY, MAP, STRUCT, UNIONTYPE)。DECIMAL适用于金融应用,VARCHAR和CHAR有长度限制,DATE不包含时间,复合类型允许存储复杂结构数据。" 113513255,10536007,使用Python Selenium自动关闭广告弹窗,"['Python', 'Web自动化', 'Selenium', '广告拦截']
摘要由CSDN通过智能技术生成

Hive到0.13.0版本为止已经支持越来越多的数据类型,像传统数据库中的VCHAR、CHAR、DATE以及所特有的复合类型MAP、STRUCT等。Hive中的数据类型可以分为数值类型、字符串类型、日期时间类型、复合类型以及其它类型,下面分别予以介绍。

数值类型

Hive中的数值类型与Java中的数值类型很相似,区别在于有些类型的名称不一样,可以概括为如下的表格:

Hive学习之Hive数据类型

 

默认情况下,整数常量被当做INT处理,除非整数常量超出了INT类型的取值范围或者在整数常量跟着Y、S、L等后缀,则常量将会作为TINYINT、SMALLINT和BIGINT处理。Hive中的浮点数常量默认被当做DOUBLE类型。

DECIMAL类型是在Hive-0.11.0版本中引入的,在Hive-0.13.0版本中做了改进。Hive中的DECIMAL基于Java中的BigDecimal,BigDecimal用于表示任意精度的不可修改的十进制数字。所有常规数字操作符(如+、-、*、/)和相关的UDFs(如Floor、Ceil、Round等)用于处理DECIMAL类型,可以转换DECIMAL为其它数值类型或者将其它基本类型转换为DECIMAL。DECIMAL类型支持科学计数法,所以不管数据集中是否包含1E+44或者4000或者二者的组合,都可以使用DECIMAL表示。Hive-0.11.0和Hive-0.12.0固定了DECIMAL类型的精度并限制为38位数字,从Hive-0.13.0开始可以指定DECIMAL的规模和精度,当使用DECIMAL类型创建表时可以使用DECIMAL(pr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值