hive函数之~复合类型构建操作

1、Map类型构建: map  ****

语法: map (key1, value1, key2, value2, …)
说明:根据输入的key和value对构建map类型

hive> Create table mapTable as select map('100','tom','200','mary') as t from tableName;

hive> describe mapTable;

t       map<string ,string>

hive> select t from tableName;

{"100":"tom","200":"mary"}

2、Struct类型构建: struct

语法: struct(val1, val2, val3, …)
说明:根据输入的参数构建结构体struct类型

hive> create table struct_table as select struct('tom','mary','tim') as t from tableName;

hive> describe struct_table;

t       struct<col1:string ,col2:string,col3:string>

hive> select t from tableName;

{"col1":"tom","col2":"mary","col3":"tim"}

3、array类型构建: array

语法: array(val1, val2, …)
说明:根据输入的参数构建数组array类型

hive> create table arr_table as select array("tom","mary","tim") as t from tableName;

hive> describe tableName;

t       array<string>

hive> select t from tableName;

["tom","mary","tim"]

posted @ 2020-07-05 19:05  小码农成长记  阅读(866)  评论(0编辑  收藏  举报