hive collect_set等集合函数

12,919次阅读
没有评论

hive工作中用到的一些函数 1. concat(string s1, string s2, string s3) 这个函数能够把字符串类型的数据连接起来,连接的某个元素可以是列值。 如 concat( name, ‘:’, score) 就相当于把name列和score列用逗号连接起来了 2. cast 用法:cast(value AS TYPE) 功能:将某个列的值显示的转化为某个类型 例子:cast(score as string ) 将double类型的数据转化为了String类型 3. contact_ws(seperator, string s1, string s2…) 功能:制定分隔符将多个字符串连接起来 例子:常常结合group by与collect_set使用 有表结构a string , b string , c int 数据为 c d 1 c d 2 c d 3 e f 4 e f 5 e f 6 想要得到 c d 1,2,3 e f 4,5,6 语句如下 select a, b, concat_ws(‘,’ , collect_set(cast(c as string))) from table group by a,b;

4. 上述用的到的 collect_set 函数,有两个作用,第一个是去重,去除group by后的重复元素, 第二个是形成一个集合,将group by后属于同一组的第三列集合起来成为一个集合。与contact_ws 结合使用就是将这些元素以逗号分隔形成字符串

admin
版权声明:本站原创文章,由admin2017-06-29发表,共计575字。
转载提示:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)