Hive 常用函数
参考地址:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF
1. parse_url(url, partToExtract[, key])
2. concat(str1,SEP,str2,SEP,str3,……) 和 concat_ws(SEP,str1,str2,str3, ……)
字符串连接函数,需要是 string型字段。
如果4个字段,想得到如下结果,看下两个函数的区别:
eg: 

代码1: select concat('江苏省','-','南京市','-','玄武区','-','徐庄软件园');
代码2: select concat_ws('-','江苏省','南京市','玄武区','徐庄软件园');
结论:当连接的内容(字段)多于2个的时候,concat_ws的优势就显现了,写法简单、方便。
3. unix_timestamp() 当前系统时间
unix_timestamp() 是将当前系统时间转换成数字型秒数,from_unixtime 将数字型按照 格式进行时间转换。
eg:

代码:select from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss');
4. regexp_replace(string A, string B, string C) 字符串替换函数,将字符串A 中的B 用 C 替换。
eg: 
代码:select regexp_replace('www.tuniu.com','tuniu','jd');
5. repeat(string str, int n) 重复N次字符串
eg:
代码:select repeat('ab',3);
6. lpad(string str, int len, string pad) 将字符串str 用pad进行左补足 到len位(如果位数不足的话)
eg:
代码:select lpad('ab',7,'k');
7. rpad(string str, int len, string pad) 将字符串str 用pad进行右补足 到len位(如果位数不足的话)
eg:
代码:select rpad('ab',7,'k');
8. trim(string A) 删除字符串两边的空格,中间的会保留。
相应的 ltrim(string A) ,rtrim(string A)
eg:
9. to_date(string timestamp) 将时间戳转换成日期型字符串
eg:
代码:select to_date('2017-01-16 09:55:54');
10. datediff(string enddate, string startdate) 返回int 的两个日期差
eg:
代码:select datediff('2017-01-16', '2017-01-10');
11. date_add(string startdate, int days) 日期加减
eg:
代码:select date_add('2017-01-10', 7);
12. current_timestamp 和 current_date 返回当前时间戳,当前日期
eg:
13. date_format(date/timestamp/string ts, string fmt) 按照格式返回字符串
eg: 
代码:select date_format('2017-01-16 09:55:54', 'yyyy-MM-dd');
14. last_day(string date) 返回 当前时间的月末日期
eg:
代码:select last_day('2017-01-16 09:55:54');
15. if(boolean testCondition, T valueTrue, T valueFalseOrNull) ,根据条件返回不同的值
eg: 
16. nvl(T value, T default_value) 如果T is null ,返回默认值
17. length(string A) 返回字符串A的长度
eg:
代码:select length('kimbo');
18. greatest(T v1, T v2, ...) 返回最大值,会过滤null
eg:
代码:select greatest('2016-01-01',NULL,'2017-01-01');
19. least(T v1, T v2, ...) 返回最小值,会过滤null
eg: 
代码:select least('2016-01-01',NULL,'2017-01-01','2015-01-01');
20. rand(), 返回0-1的随机值。rand(INT seed) 返回固定的随机值。
eg:
21. md5(string/binary) hive 1.3以上版本,返回md5码
22. split(str, regex) ,安装规则截取字符串,返回数组
eg:
代码:select split('ab-cd','-')[0];
Hive 常用函数的更多相关文章
- Hive常用函数的使用
Hive常用函数的使用 文章作者:foochane 原文链接:https://foochane.cn/article/2019062501.html 1 基本介绍 1.1 HIVE简单介绍 Hive ...
- hive常用函数 wordCount--Hive窗口函数1.1.1 聚合开窗函数聚合开窗函数实战
第三天笔记 第三天笔记 SQL练习Hive 常用函数关系运算数值计算条件函数日期函数重点!!!字符串函数Hive 中的wordCount1.1 Hive窗口函数1.1.1 聚合开窗函数聚合开窗函数实战 ...
- Hive常用函数
字符串函数 字符串长度函数:length 语法: length(string A) 返回值: int 说明:返回字符串A的长度 举例: hive> select length(‘abcedfg’ ...
- orcale和hive常用函数对照表(?代表未证实)
函数分类 oracle hive 说明 字符函数 upper('coolszy') upper(string A) ucase(string A) 将文本字符串转换成字母全部大写形式 lower('K ...
- Hive 常用函数汇总
Hive内部提供了很多函数给开发者使用,包括数学函数,类型转换函数,条件函数,字符函数,聚合函数,表生成函数等等,这些函数都统称为内置函数. 目录 数学函数 集合函数 类型转换函数 日期函数 条件函数 ...
- hive常用函数六
cast 函数: 类型转换函数,cast(kbcount as int); case when: 条件判断,case when kbcount is not null and cast(kbcount ...
- hive常用函数五
复合类型构建操作 1. Map类型构建: map 语法: map (key1, value1, key2, value2, …) 说明:根据输入的key和value对构建map类型 举例: hive& ...
- hive常用函数四
字符串函数 1. 字符串长度函数:length 语法: length(string A) 返回值: int 说明:返回字符串A的长度 举例: hive> select length('abced ...
- hive常用函数三
日期函数 1. UNIX时间戳转日期函数: from_unixtime 语法: from_unixtime(bigint unixtime[, string format]) 返回值: string ...
随机推荐
- iOS多线程的初步研究3
iOS多线程的初步研究(三) 弄清楚NSRunLoop确实需要花时间,这个类的概念和模式似乎是Apple的平台独有(iOS+MacOSX),很难彻底搞懂(iOS没开源,呜呜). 官网的解释是说run ...
- VS2012下基于Glut 矩阵变换示例程序:
也可以使用我们自己的矩阵运算来实现OpenGL下的glTranslatef相应的旋转变换.需要注意的是OpenGL下的矩阵是列优先存储的. 示例通过矩阵运算使得圆柱或者甜圈自动绕Y轴旋转,可以单击鼠标 ...
- 使用JavaScript重定向URL参数
本人从网上查找(如有雷同,不胜荣幸.),并进行了修改,简单粗暴,实现使用JavaScript重置url参数 1.字符拼接形式 function setUri(para, val) { var strN ...
- 再谈加密-RSA非对称加密的理解和使用
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...
- Linux笔记(一) - 目录处理命令
(1)列出文件: ls-a 显示所有文件及目录,包括隐藏文件-l 显示详细信息(长格式显示)-d 显示目录本身-h 人性化显示-i 查看i节点(2)创建目录:mkdir-p 递归创建可以同时创建多个, ...
- 2017 年不可错过的开发工具 Top 50
想知道 2017 年有哪些值得关注的开发工具吗?StackShare 年度开发工具排行榜来啦! StackShare.io 是一个开发者工具及服务分享平台,致力于发现并分享开发者使用的开发工具.服务与 ...
- Android之WebView网页滚动截图
WebView 网页滚动截屏,可对整个网页进行截屏而不是仅当前屏幕哦! 注意若Web页面存在position:fixed; 的话得在调用前设置为 position:absolute; 哦,否则会出现很 ...
- learning english
distortion 英[dɪ'stɔ:ʃn] 美[dɪˈstɔrʃən]n. 扭曲,变形; 失真,畸变; [心理学] 扭转;[例句]I think it would be a gross disto ...
- liunx服务器常见监控指标
1. CPU Utilization 英文翻译就是CPU的利用率75%以上就比较高了(也有说法是80%或者更高).有的博客上说除了这个指标外,还要结合Load Average和Context Swit ...
- 在Windows上创建同样的Linux操作环境
在之前的文章中,介绍了我在GNU/Linux图形界面环境下所使用的工具集合.其基本目的是在保证占用最少系统资源的条件下,将电脑操作效率推向极致.这样的工具组合尤如瑞士军刀一般,简洁.高效.功能全面.与 ...