Hive 数据类型
Hive 数据类型分为数值类型、字符串类型、杂项类型和复杂类型。下面是一列 Hive 数据类型的列表。
整型类型
类型 | 大小 | 范围 |
---|---|---|
TINYINT | 1字节有符号整数 | -128到127 |
SMALLINT | 2字节有符号整数 | 32,768到32,767 |
INT | 4字节有符号整数 | 2,147,483,648到2,147,483,647 |
BIGINT | 8字节有符号整数 | -9,223,372,036,854,775,808到9,223,372,036,854,775,807 |
十进制类型
类型 | 大小 | 范围 |
---|---|---|
浮点数 | 4字节 | 单精度浮点数 |
双精度浮点数 | 8字节 | 双精度浮点数 |
日期/时间类型
TIMESTAMP
- 它支持传统的UNIX时间戳,并可选择精确到纳秒。
- 作为整数数值类型,它被解释为以秒为单位的UNIX时间戳。
- 作为浮点数数值类型,它被解释为带有小数精度的UNIX时间戳。
- 作为字符串,它遵循java.sql.Timestamp格式”YYYY-MM-DD HH:MM:SS.fffffffff”(9位小数精度)。
DATES
日期值用于指定特定的年、月和日,格式为YYYY-MM-DD。然而,它没有提供一天中的时间。日期类型的范围介于0000-01-01至9999-12-31之间。
字符串类型
STRING
字符串是一系列字符。它的值可以用单引号(‘)或双引号(“”)括起来。
Varchar
varchar是一种可变长度类型,其范围介于1和65535之间,指定了字符字符串中允许的最大字符数。
CHAR
char是一种固定长度类型,其最大长度固定为255。
复合类型
类型 | 大小 | 范围 |
---|---|---|
struct | 类似于C结构或对象,其中字段使用“点”表示法访问。 | struct(‘James’,’Roy’) |
map | 它包含键值对元组,字段使用数组表示法访问。 | map(‘first’,’James’,’last’,’Roy’) |
array | 这是一个包含相似类型的值的集合,可使用从零开始的整数进行索引。 | array(‘James’,’Roy’) |