HIVE 数据类型

2024 年 8 月 28 日 | 阅读 2 分钟

Hive 数据类型分为数值类型、字符串类型、杂项类型和复杂类型。下面给出了 Hive 数据类型的列表。

整数类型

类型大小范围
TINYINT1 字节有符号整数-128 至 127
SMALLINT2 字节有符号整数32,768 到 32,767
INT4 字节有符号整数2,147,483,648 到 2,147,483,647
BIGINT8 字节有符号整数-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807

十进制类型

类型大小范围
FLOAT4 字节单精度浮点数
DOUBLE8 字节双精度浮点数

日期/时间类型

TIMESTAMP

  • 它支持传统的 UNIX 时间戳,并具有可选的纳秒精度。
  • 作为整数数值类型,它被解释为以秒为单位的 UNIX 时间戳。
  • 作为浮点数值类型,它被解释为带有十进制精度的以秒为单位的 UNIX 时间戳。
  • 作为字符串,它遵循 java.sql.Timestamp 格式 "YYYY-MM-DD HH:MM:SS.fffffffff"(9 位小数精度)

日期

日期值用于指定特定的年、月和日,格式为 YYYY--MM--DD。 但是,它没有提供当天的时间。 日期类型的范围在 0000--01--01 到 9999--12--31 之间。

字符串类型

字符串

字符串是一系列字符。 它的值可以用单引号 (') 或双引号 (") 括起来。

Varchar

varchar 是一种可变长度类型,其范围在 1 到 65535 之间,它指定了字符字符串中允许的最大字符数。

CHAR

char 是一种固定长度类型,其最大长度固定为 255。

复杂类型

类型大小范围
结构体它类似于 C 结构体或对象,其中字段使用“点”符号访问。struct('James','Roy')
Map它包含键值对,其中字段使用数组表示法访问。map('first','James','last','Roy')
Array它是类似类型值的集合,可以使用基于零的整数进行索引。array('James','Roy')