如果你对数据分析感兴趣,希望学习更多的方法论,希望听听经验分享,
欢迎移步公众号「小火龙说数据」,更多精彩原创文章与你分享!
「干货」SQL常用函数及避坑点汇总『Hive系列1』https://mp.weixin.qq.com/s?__biz=MzkxNzMwNTEwNQ==&mid=2247493010&idx=1&sn=21957ea9b4f89fcee27a0e5fc8a49d0b&chksm=c14007ecf6378efae468e960a9012e18e5dd430f5b2657840867c18b1e235b4080fd3ce6dbb4&scene=178&cur_album_id=2186197305781993475#rd
00 序言SQL是数据分析同学日常用到的查询语言,Hive是基于Hadoop的数据仓库工具,Hive提供了SQL的查询功能,可将SQL转化为MapReduce任务来执行。本文汇总了小火龙在工作中常用的Hive SQL函数,以及其中可能涉及到的一些坑,供大家参考学习。函数类型如下图:
本文主要汇总「内置函数」的几种类型,对于「用户自定义函数」的创建,会在后面的文章中进行讲解。
01 数值函数「数值函数」主要是对int和float数据类型进行的处理。常用函数汇总如下:
避坑点
1、rand(x):相同“种子”多次结果均一致;无“种子”任何一次结果均不一致。
02 字符串函数「字符串函数」主要是对char数据类型进行的处理。常用函数汇总如下:
03 条件函数「条件函数」主要是对字段进行判断。常用函数汇总如下:
04 日期函数「日期函数」主要是对日期进行处理,以及加减操作,在计算留存时经常使用。常用函数汇总如下:
05 关系函数「关系函数」主要是对字段进行匹配。常用函数汇总如下:
避坑点
1、「NULL」和「空字符串」是不一样的,一般在数据库中表现为,「NULL」显示NULL,而「空字符串」显示为空,在匹配的时候需要注意。
举例:如果拿捏不好字段是哪种类型,并且需要去掉的情况,建议两者一起去掉。A is not null and A !=''
2、 Like、Rlike、Regexp的区别:
Like:通配符,不是正则。通配符涵盖 % 和 _。Rlike:正则表达式,写法与java一样。Regexp:基本同Rlike。
06 聚合函数「聚合函数」多行转一行。常用函数汇总如下:
07 分拆函数「分拆函数」一行转多行。常用函数汇总如下:
08 窗口函数「窗口函数」又称OLAP函数(online analytical processing),完成类似聚合函数的计算效果,但是又保持每行的数据,不被聚合到一起。常用函数汇总如下:
避坑点
1、 rank( )over( )、dense_rank( )over( )、row_number( )over( )的区别
2、sum( )over( )函数中有order by 和 无order by的区别
以上就是本期的内容分享
如果你也对数据分析感兴趣,更多「原创」文章,与你分享!!
微信公众号:小火龙说数据



