1、map
select
map('k1','v1', 'k2','v2'), --构建map
map('k1','v1', 'k2','v2')['k1'], --获取map中的元素
map('k1','v1', 'k2','v2')['k3'], --不存在的key返回NULL
size(map('k1','v1', 'k2','v2')) --获取map的长度
;
+------------------------+------+-------+------+
| _c0 | _c1 | _c2 | _c3 |
+------------------------+------+-------+------+
| {"k1":"v1","k2":"v2"} | v1 | NULL | 2 |
+------------------------+------+-------+------+
2、struct
select
struct(123, 'abc', true), --构建struct
named_struct('c1',123, 'c2','abc', 'c3',true), --构建named_struct
named_struct('