内容简介:HIVE中关于collect_set与explode函数妙用
hive的复合数据类型
Hive中的列支持使用三类复杂的集合数据类型,即:array,map及struct,这些类型的名称是保留字,具体用法可参见该篇博文,里面有关于三类基本集合数据类型的操作实例,注:map中可嵌套array类型。
例如,定义表:
create table example ( device_id string, login_ip array<string>, user_info map<string,array<string>> address struct<street:string,city:string,state:string> ) row format delimited fields terminated by '\001' collection items terminated by '\002' map keys terminated by '\003' lines terminated by '\n' stored as RCFile;
假设这样的数据类型以分区表存储,你要统计一段时间类no=1下的去重score,那么该怎么办了?这里可配合使用lateral view首先实现列转行的功能,如下所示:
select no,score from tablaa lateral view explode(score_set) xxx as score;
注:xxx代表虚表名称,不能缺少。
进一步深化上述代码解决统计一段时间的去重值,可写为:
select no,collect_set(score) from tablaa lateral view explode(score_set) xxx as score group by no;
这样,将两个函数结合实现了行转列或列转行的妙用。
以上所述就是小编给大家介绍的《HIVE中关于collect_set与explode函数妙用》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 稀里糊涂系列之list函数妙用
- HIVE中关于collect_set与explode函数妙用
- axios 妙用技巧
- KeyPath在Swift中的妙用
- 哈希算法在以太坊中的妙用
- cocos creator教程之向量的妙用
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
淘宝、天猫网上开店速查速用一本通
刘珂 / 北京时代华文书局 / 2015-6 / 39.8
为了帮助众多的新手卖家掌握淘宝天猫网上开店、货源准备、店铺装修、商品拍摄、交易方法、营销推广以及售后服务等知识,本书作者根据自己多年网上开店心得,并结合了多名淘宝五皇冠店主和天猫旗舰店卖家的经验,精心策划编写了本书。 《淘宝、天猫网上开店速查速用一本通:开店、装修、运营、推广完全攻略》将目前最前沿、最流行的营销理念运用到淘宝天猫网上平台,所有技术都在实际应用获得显著效果,并且还在持续创造着惊......一起来看看 《淘宝、天猫网上开店速查速用一本通》 这本书的介绍吧!