玖叶教程网

前端编程开发入门

「干货」SQL常用函数及避坑点汇总「Hive系列1」

预计阅读时间:5min

阅读建议:本文总结了工作中「常用的SQL函数」以及「可能踩到的一些坑」,偏知识总结类文章,建议「关注」「收藏」,需要的时候拿出来看一看。


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的区别

以上就是本期的内容分享,希望可以帮助到你。码字不易,如果觉得对你有一点点帮助,欢迎「关注」「点赞」「分享」哦,我会持续为大家输出优质的「原创内容」~~


如果你也对数据分析感兴趣,那就来「关注」我吧,更多「原创」文章,与你分享!!
WX公众号:小火龙说数据

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言