Hive学习笔记(三)-关键字-内置函数

平时用到了以下几个不常用但是却相当强大的hive内置函数,记录在这做个笔记吧,防止忘了。持续更新

sort_array(Array <T>)

将数组元素按照升序排序并返回

explode() 行转列
返回值 格式 用法
array explode(array<T> b) 对于b中的每个元素,将生成一行且包含该元素
多行记录 explode(array<T>) 每行对应数组中的一个元素
多行记录 explode(map) 每行对应每个map键值对,其中一个字段是map的键,另一个字段是值
collect_list ( t.a[0] )

返回t表中a字段第一个元素组成的可重复数组

collect_set ( t.a[0] )

返回t表中a字段第一个元素组成的不可重复数组

concat_ws ( string SEP,string a,string b... )

作用与concat()类似,将字符串按照次序拼接,但是用指定的分隔符进行分割

posexplode ( array<T> )

作用与参数为数组的explode()方法类似,但包含项在原始数组中的位置,返回( pos,value )的二元组,第一个为位置

lateral view

用来生成用户自定义表以展开的形式map或者array的值,如同explode(),但是会忽略值为null的列,如果要显示这些列,可以用lateral view outer (hive0.12.0之后版本才会有)


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 13,202评论 0 13
  • # 数组部分 # 1.## array_chunk($arr, $size [, $preserve_key = ...
    clothTiger阅读 4,952评论 0 1
  • LanguageManual UDF - Apache Hive - Apache Software Founda...
    葡萄喃喃呓语阅读 4,734评论 0 0
  • 我昨晚做了一个梦 应该是天冷了,也有可能是昨晚zjj说的那番话 看来该加衣服了-) 梦里面啊 我到了他的学校 特别...
    南国先生安阅读 2,622评论 0 0
  • 假设我需要一个朋友。 我需要一个“完美的朋友”,他可以是男生也可以是女生。但我的要求很高,不是所有人都值得我以朋友...
    借我灿烂阅读 1,697评论 1 1

友情链接更多精彩内容