Hive复杂类型-array、map、struct
一、 简单数据类型
二、 复杂数据类型
1.ARRAY
ARRAY是具有相同类型变量的集合,这些变量数组的元素,每个数组元素都有一个索引编号,编号从零开始。
数据格式:['Apple','Orange','Mongo']
定义示例:array<string>
使用实例:a[0]='Apple'
其中a表示表字段名,该字段的类型为ARRAY,允许存储的数据为string,起始访问索引为0
2.MAP
MAP是一组键值对集合,key只能是基本类型,值可以是任意类型
数据格式:{'A':'Apple','O':'Orange','M':'Mongo'}
定义示例:map<string,string>
使用实例:b['A']='Apple'
其中b表示字段名,该字段的类型为MAP,允许存储一个<string,string>类型的键值对,直接按键访问即可
3.STRUCT
STRUCT封装了一组有名字的字段,其类型可以是任意的基本类型,结构体内的元素使用“.”来访问
数据格式:{'Apple',2}
定义示例:struct<fruit:string,weight:int>
使用实例:c.weight=2
其中c表示该字段名,该字段的类型为STRUCT,包含了两个元素“fruit”和“weight”,对元素的访问方式类似于Java中访问对象的属性
4.UNIONTYPE
UNIONTYPE类型可以保存指定数据类型中的任意一种。