这里整理的hive字段类型是在hive上创建表时,指定的字段类型。因为跟mysql的数据类型有些不同,特此整理,便于以后使用查看。
更具体描述可参考官方文档:https://hive.apache.org/docs/latest/languagemanual-types_27838462/
hive的数据类型大致可分为:基本数据类型和复杂数据类型
基本数据类型:
int 4个字节整数 如:100000
tinyint 1个字节整数(~128-127) 如:10
smallint 2个字节(-32,768 ~ 32,767) 如:1000
bigint 8个字节 如:10000000000L
boolean 布尔值 如:true/false
float 4个字节单精度浮点数 如:3.14159
double 8个字节双精度浮点数 如:3.1415926535
decimal(p,s) 指定精度小数,p:总位数,s:小数位 如:decimal(8,4) 123.4567
string 字符串,不指定长度 如:"jctang"
varchar(n) 可变长度字符串,最大n字符 如:varchar(20)
char(n) 固定长度字符串,n字符 如:char(10)
timestamp 时间戳 如:'2023-01-01 12:00:00.123'
date 日期(年月日) 如:"2025-03-25"
复杂数据类型:
array<T> 同类型元素的有序集合(数组) 如:array<"name","account","phone">
map<k,v> 键值对集合(字典) 如:map<"phone","151xxxx4481">
struct<name:T,...> 字段集合,类似C结构体 如:STRUCTid:int,name:string
uniontype<T1,T2,...> 存储多个可能类型中的一个 如:UNIONTYPE<int,string>