Hive是建立在 Hadoop 上的数据仓库基础架构,定义了简单的类 SQL 查询语言(HQL)

函数分类:

简单内置函数:数学函数,字符函数,日期函数,条件函数,聚合函数。

高级内置函数:行列转换函数,分析性函数。

自定义函数:udf。

以上是小编自己整理分类的,网上也有很多不同分类的版本,下图就是在别人博客中我觉得比较好的分类方法。

数学函数

round():四舍五入

floor(): 向下取整

ceil():  向上取整

rand():  随机数

mod():取余

字符函数

length(string1):长度

concat(string1,string2):拼接

concat_ws(sep,string1,string2):返回按指定分隔符拼接的字符串

lower(string1):小写字符串 upper():返回大写字符串

trim(string1):去左右空格,ltrim(string1):去左空格。rtrim(string1):去右空格

reverse(string1):字符串逆置

rpad(string1,len1,pad1):字符右填充。lpad():左填充

split(string1,pat1):分隔字符串返回数组。如split('a,b,c',',')返回["a","b","c"]

substr():截取。如substr('abcde',1,3)返回'abc'

日期函数

curdate:返回当前日期

year(date):month(date):day(date):  返回日期date的年,月,日,类型为int

datediff(date1,date2):返回日期date1与date2相差的天数

str_to_date将日期格式的字符转换成指定格式的日期

例子:str_to_date('9-13-2020','%m-%d-%y')结果:2020-09-13

date_format()将日期转换成字符

例子:date_format('2020/9/13','%Y年%m月%d日')结果:2020年9月13日

条件函数

if(条件,t1,t2):若条件成立,则返回t1,反正返回t2。如if(1>2,100,200)返回200

case when 条件 then t1 else t2 end:若条件成立,则t1,否则t2,可加多重判断

isnull(a):若a为null则返回true,否则返回false

聚合函数

count():统计行数

sum(col1):统计指定列和

avg(col1):统计指定列平均值

min(col1):返回指定列最小值

max(col1):返回指定列最大值

行转列函数

lateral  view explode(split(col1,',')) :同组同列的数据拆分成多行,以sep分隔符区分

列转行函数

concat_ws(sep, collect_set(col1)) :同组不同行合并成一列,以sep分隔符分隔。collect_set在无重复的情况下也可以collect_list()代替。collect_set()去重,collect_list()不去重

分析类函数

row_number()  over(partitiion by .. order by .. ):根据partition排序,相同值取不同序号,不存在序号跳跃

rank() over(partition by ..  order by .):根据partition排序,相同值取相同序号,存在序号跳跃

sum() over(partition by .. order by ..)根据partition排序,累计和

count() over(partition by .. order by ..)根据partition排序,累计行数

UDF函数

UDF(User-Defined Functions)即是用户定义的hive函数。hive自带的函数并不能完全满足业务需求,这时就需要我们自定义函数了

UDF的分类

  1. UDF:one to one,进来一个出去一个,row mapping。是row级别操作,如:upper、substr函数

  2. UDAF:many to one,进来多个出去一个,row mapping。是row级别操作,如sum/min。

  3. UDTF:one to many ,进来一个出去多个。如alteral view与explode

今天无锡也下雪了,从朋友圈盗图一张,每天进步多一点~

降温了,大家做好保暖

hive 去重 字符串_hive函数相关推荐

  1. hive 如何将数组转成字符串_Hive函数大全(含例子)之字符串函数(String Functions)...

    字符串函数 String Functions ascii(string str) 返回结果: 返回字符串str首字母的十进制ascii码返回类型: intselect ascii('ABC'); -- ...

  2. hive中字符串查找函数 instr 和 locate

    instr( ) 字符串查找函数: instr 语法: instr(string str, string substr)                                        ...

  3. hive in 字符串_hive常用函数 concat concat_ws row_number

    在应用hive在数据仓库中进行数据提取中经常会用户很多函数,为了记录自己常用的hive函数,特写这个系列的文章,记录下自己的使用心得,其中包括使用场景.用法等. 1.concat concat是字符拼 ...

  4. 2021年大数据Hive(五):Hive的内置函数(数学、字符串、日期、条件、转换、行转列)

    全网最详细的Hive文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 系列历史文章 前言 Hive的内置函数 一.数学函数 1. 取整函数: round ...

  5. hive中字段长度函数_Hive常用函数总结

    hive函数的分类 hive的客户端 显示当前会话有多少函数可用 SHOW FUNCTIONS; 如: hive> show functions ; OK ! != % 显示函数的描述信息 DE ...

  6. 分析函数hive计算均值_Hive中的函数

    函数分类 UDF user-define-function:用户定义函数 进一条出一条 UDAF user-define-aggregation-function:用户定义聚合函数 进多条出一条 如: ...

  7. hive同时不包含一些字符串_Hive中常用的字符串操作

    一.准备 创建虚表: echo "X" >> dual.tsv hadoop fs -put dual.tsv '/data//' create table dual( ...

  8. hive同时不包含一些字符串_hive中的字符串提取

    在进行数据分析时,尤其要对网页进行分析时,我们往往要对其中部分的数据进行抽取,这个就需要靠hive的函数来完成了. 1.split函数 首先要讲的是split函数,这个函数的作用是对字符窜进行分割,基 ...

  9. 【Hive】字符串函数

    Hive版本: hive-1.1.0-cdh5.14.2 1. 首字符转ascii码函数:ascii 语法:ascii(string str) 返回值:int 描述:返回字符串str首字符的ascii ...

最新文章

  1. Matlab学习笔记——图形绘制
  2. Android --- 百度地图 SDK v3.6.0 以上版本找不到 PoiOverlay 类
  3. centeros7安装mysql5.6_CentOS7安装MySQL5.6
  4. vscode不能跳转_vscode-goto-node-modules 一个快速定位 node 模块的 vscode 插件
  5. HTML与XML数据的结合小总结
  6. Linux安装及破解密码
  7. word中无法输入中文
  8. 由魅族16到Reno5新机的转变!绿厂凭这几点吸引了我
  9. 初始C语言——成绩等级划分
  10. syslog协议发送本机日志到其他设备/服务器(winlinux)
  11. 斯密特:未来六个月Android全胜iOS
  12. Vue 计算属性缓存和方法的区别:从另一段代码来看【vue3学习笔记】
  13. ARM寄存器的7种工作模式和几种寻址方式
  14. python中文字符串写入文件,python写入中英文字符串到文件的方法
  15. 历届国际足联世界足球先生
  16. flutter 值得推荐的插件
  17. 小工具: 调整外置文本字幕的时间
  18. 寓言中的智慧:兔子、狐狸和狼
  19. MedSegDiff:基于 Diffusion Probabilistic Model 的医学图像分割
  20. 一款合格的CAD看图app这些必备技能你了解吗?

热门文章

  1. Centos中不从skel目录里向其中复制任何文件错误的解决方法
  2. [解读REST] 3.基于网络应用的架构
  3. JSP内置对象(9个常用的内置对象)
  4. 精确记录和恢复ListView滑动位置
  5. SQL WITH NOCHECK 和 CLUSTERED | NONCLUSTERED
  6. 如何提高个人的职涯“本钱”
  7. 数据可视化 信息可视化_动机可视化
  8. leetcode 1208. 尽可能使字符串相等(滑动窗口)
  9. leetcode 509. 斐波那契数(dfs)
  10. node seneca_使用Node.js和Seneca编写国际象棋微服务,第2部分