Hive常用函数(日期函数,取整函数,字符串操作函数,集合操作函数)
常用函数
- 常用日期函数
- 常用取整函数
- 常用字符串操作函数
- 集合操作函数
- 多维分析
常用日期函数
unix_timestamp:返回当前或指定时间的时间戳
select unix_timestamp();
+-------------+
| _c0 |
+-------------+
| 1650871673 |
+-------------+
select unix_timestamp('2022-04-25','yyyy-MM-dd');
+-------------+
| _c0 |
+-------------+
| 1650844800 |
+-------------+
from_unixtime:将时间戳转为日期格式
select from_unixtime(1650844800);
+----------------------+
| _c0 |
+----------------------+
| 2022-04-25 00:00:00 |
+----------------------+
current_date:当前日期
select current_date;
+-------------+
| _c0 |
+-------------+
| 2022-04-25 |
+-------------+
current_timestamp:当前的日期加时间
select current_timestamp;
+-------------------------+
| _c0 |
+-------------------------+
| 2022-04-25 15:32:29.09 |
+-------------------------+
to_date:抽取日期部分
select to_date('2022-04-25 15:32:29.09');
+-------------+
| _c0 |
+-------------+
| 2022-04-25 |
+-------------+
year:获取年
select year('2022-04-25 15:32:29.09');
+-------+
| _c0 |
+-------+
| 2022 |
+-------+
month:获取月
select month('2022-04-25 15:32:29.09');
+------+
| _c0 |
+------+
| 4 |
+------+
day:获取日
select day('2022-04-25 15:32:29.09');
+------+
| _c0 |
+------+
| 25 |
+------+
hour:获取时
select hour('2022-04-25 15:32:29.09');
+------+
| _c0 |
+------+
| 15 |
+------+
minute:获取分
select minute('2022-04-25 15:32:29.09');
+------+
| _c0 |
+------+
| 32 |
+------+
second:获取秒
select second('2022-04-25 15:32:29.09');
+------+
| _c0 |
+------+
| 29 |
+------+
weekofyear:当前时间是一年中的第几周
select weekofyear('2022-04-25 15:32:29.09');
+------+
| _c0 |
+------+
| 17 |
+------+
dayofmonth:当前时间是一个月中的第几天
select dayofmonth('2022-04-25 15:32:29.09');
+------+
| _c0 |
+------+
| 25 |
+------+
months_between: 两个日期间的月份
select months_between('2022-01-25','2022-04-25');
+-------+
| _c0 |
+-------+
| -3.0 |
+-------+
add_months:日期加减月
select add_months('2022-01-25',+3);
+-------------+
| _c0 |
+-------------+
| 2022-04-25 |
+-------------+
select add_months('2022-01-25',-3);
+-------------+
| _c0 |
+-------------+
| 2021-10-25 |
+-------------+
datediff:两个日期相差的天数
select datediff('2022-01-25','2022-04-25');
+------+
| _c0 |
+------+
| -90 |
+------+
date_add:日期加天数
select date_add('2022-04-25',-3);
+-------------+
| _c0 |
+-------------+
| 2022-04-22 |
+-------------+
date_sub:日期减天数
减负等于加正
select date_sub('2022-04-25',-3);
+-------------+
| _c0 |
+-------------+
| 2022-04-28 |
+-------------+
last_day:日期的当月的最后一天
select last_day('2022-04-25');
+-------------+
| _c0 |
+-------------+
| 2022-04-30 |
+-------------+
date_format(): 格式化日期
select date_format('2022-04-25 15:20:17','yyyy/MM/dd HH:mm:ss');
+----------------------+
| _c0 |
+----------------------+
| 2022/04/25 15:20:17 |
+----------------------+
常用取整函数
round: 四舍五入
select round(3.14);
+------+
| _c0 |
+------+
| 3 |
+------+
select round(3.54);
+------+
| _c0 |
+------+
| 4 |
+------+
ceil: 向上取整
select ceil(3.14);
+------+
| _c0 |
+------+
| 4 |
+------+
select ceil(3.54);
+------+
| _c0 |
+------+
| 4 |
+------+
floor: 向下取整
select floor(3.14);
+------+
| _c0 |
+------+
| 3 |
+------+
select floor(4.14);
+------+
| _c0 |
+------+
| 4 |
+------+
常用字符串操作函数
upper: 转大写
select upper('Hive');
+-------+
| _c0 |
+-------+
| HIVE |
+-------+
lower: 转小写
select lower('Hive');
+-------+
| _c0 |
+-------+
| hive |
+-------+
length: 长度
select length('Hive');
+------+
| _c0 |
+------+
| 4 |
+------+
trim: 前后去空格
select trim(' Hive ');
+-------+
| _c0 |
+-------+
| Hive |
+-------+
lpad: 向左补齐,到指定长度
select lpad('Hive',1,'l');
+------+
| _c0 |
+------+
| H |
+------+
rpad: 向右补齐,到指定长度
select rpad('Hive',5,'l');
+--------+
| _c0 |
+--------+
| Hivel |
+--------+
regexp_replace:使用正则表达式匹配目标字符串,匹配成功后替换!
select regexp_replace('2020/04/25', '/', '-');
+-------------+
| _c0 |
+-------------+
| 2020-04-25 |
+-------------+
集合操作函数
size: 集合中元素的个数
“map” or “list” is expected at function SIZE
(函数 SIZE 需要“map”或“list”)
select name,deductions from employees;
+-------------------+----------------------------------------------------+
| name | deductions |
+-------------------+----------------------------------------------------+
| John Doe | {"Federal Taxes":0.2,"State Taxes":0.05,"Insurance":0.1} |
| Mary Smith | {"Federal Taxes":0.2,"State Taxes":0.05,"Insurance":0.1} |
| Todd Jones | {"Federal Taxes":0.15,"State Taxes":0.03,"Insurance":0.1} |
| Bill King | {"Federal Taxes":0.15,"State Taxes":0.03,"Insurance":0.1} |
| Boss Man | {"Federal Taxes":0.3,"State Taxes":0.07,"Insurance":0.05} |
| Fred Finance | {"Federal Taxes":0.3,"State Taxes":0.07,"Insurance":0.05} |
| Stacy Accountant | {"Federal Taxes":0.15,"State Taxes":0.03,"Insurance":0.1} |
+-------------------+----------------------------------------------------+
select size(deductions) from employees;
+------+
| _c0 |
+------+
| 3 |
| 3 |
| 3 |
| 3 |
| 3 |
| 3 |
| 3 |
+------+
map_keys: 返回map中的key
select map_keys(deductions) from employees;
+----------------------------------------------+
| _c0 |
+----------------------------------------------+
| ["Federal Taxes","State Taxes","Insurance"] |
| ["Federal Taxes","State Taxes","Insurance"] |
| ["Federal Taxes","State Taxes","Insurance"] |
| ["Federal Taxes","State Taxes","Insurance"] |
| ["Federal Taxes","State Taxes","Insurance"] |
| ["Federal Taxes","State Taxes","Insurance"] |
| ["Federal Taxes","State Taxes","Insurance"] |
+----------------------------------------------+
map_values: 返回map中的value
select map_values(deductions) from employees;
+------------------+
| _c0 |
+------------------+
| [0.2,0.05,0.1] |
| [0.2,0.05,0.1] |
| [0.15,0.03,0.1] |
| [0.15,0.03,0.1] |
| [0.3,0.07,0.05] |
| [0.3,0.07,0.05] |
| [0.15,0.03,0.1] |
+------------------+
array_contains: 判断array中是否包含某个元素
select name,subordinates from employees;
+-------------------+------------------------------+
| name | subordinates |
+-------------------+------------------------------+
| John Doe | ["Mary Smith","Todd Jones"] |
| Mary Smith | ["Bill King"] |
| Todd Jones | [] |
| Bill King | [] |
| Boss Man | ["John Doe","Fred Finance"] |
| Fred Finance | ["Stacy Accountant"] |
| Stacy Accountant | [] |
+-------------------+------------------------------+
select name,array_contains(subordinates,'Bill King') from employees;
+-------------------+--------+
| name | _c1 |
+-------------------+--------+
| John Doe | false |
| Mary Smith | true |
| Todd Jones | false |
| Bill King | false |
| Boss Man | false |
| Fred Finance | false |
| Stacy Accountant | false |
+-------------------+--------+
sort_array: 将array中的元素排序
select name,sort_array(subordinates) from employees;
+-------------------+------------------------------+
| name | _c1 |
+-------------------+------------------------------+
| John Doe | ["Mary Smith","Todd Jones"] |
| Mary Smith | ["Bill King"] |
| Todd Jones | [] |
| Bill King | [] |
| Boss Man | ["Fred Finance","John Doe"] |
| Fred Finance | ["Stacy Accountant"] |
| Stacy Accountant | [] |
+-------------------+------------------------------+
多维分析
grouping sets:多维分析
这个建议看其他大佬的文章
Hive常用函数(日期函数,取整函数,字符串操作函数,集合操作函数)相关推荐
- SQl函数: 1.取整函数
SQl函数: 1.取整函数 转载收集学习:https://www.cnblogs.com/fashflying/p/6023036.html SQL中的取整函数FLOOR.ROUND.CEIL.TRU ...
- JSON字符串转List集合操作
场景: JSON字符串转List集合与List集合转JSON字符串 使用的jar包是fastjson-1.2.41.jar 1.JSON字符串转List集合操作 publ ...
- 本题要求实现一个函数,将两个字符串连接起来。(strcat)函数实现
函数接口定义: char *str_cat( char *s, char *t ); 函数str_cat应将字符串t复制到字符串s的末端,并且返回字符串s的首地址. 裁判测试程序样例: #includ ...
- python字符串函数的find方法_python字符串的方法与操作大全
一:字符串的方法与操作 *注意:首字母为l的为从左边操作,为r的方法为从右边操作 1.__contains__()判断是否包含 判断指定字符或字符串是否包含在一个字符串内,返回值为true或者fals ...
- c#把日期改成数字字符串_C#编写壹个函数将输入的中文日期转换为阿拉伯数字日期...
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Date ...
- python3调用函数len结果不返回字符串长度_Python通过len函数返回对象长度
英文文档: len(s) Return the length (the number of items) of an object. The argument may be a sequence (s ...
- [Excel]Excel函数和用法(4)——查找字符串,SEARCH和FIND函数
区别:SEARCH大小写不敏感,FIND大小写敏感 作用:都是从左到右返回搜索到的字符串的起始位置 SEARCH语法:SEARCH(find_text, within_text, [start_num ...
- Hive常用函数大全
目录 第1章 算数运算 1.1 加法: + 1.2 减法: - 1.3 乘法: * 1.4 除法: / 1.5 取余: % 1.6 位与: & 1.7 位或: | 1.8 位异或: ^ 1.9 ...
- oracle中101向上取整,oracle向上取整的函数 oracle除数取整
excel中取整函数是如何实现的? 让我们看看Excel的舍入问题 !分别使用: 1,int(A1),round directly 2,A1 mod(A1,1),mod(A1,1)是获取小数点的方法 ...
- 离散数学【02】——基本结构:集合、函数、序列等
文章目录 1. 基本结构 2. 集合 2.1 集合相等与子集 2.2 集合的大小 2.3 笛卡尔积 2.4 量词和集合 2.5 集合运算 2.6 接下来是一些零碎的东西 2. 函数 2.1 一对一函数 ...
最新文章
- BZOJ 2806 Luogu P4022 [CTSC2012]Cheat (广义后缀自动机、DP、二分、单调队列)
- java给qq发消息_QQ发送消息
- lambda函数 RUNOOB python练习题49
- matlab基础试题,MATLAB基础试题题目及答案,课程2020最新期末考试题库,章节测验答案...
- Keil 中的Code, RO-data , RW-data, ZI-data
- jep(java表达式分析器)简介
- android 后退按钮,如何在android中处理Search View的后退按钮
- 设计模式--中介者模式(Mediator)
- 多继承下的super()指向的不一定是直接父类
- 浅谈压缩感知(二十七):压缩感知重构算法之稀疏度自适应匹配追踪(SAMP)
- 如何规范化数据库模型设计
- 南京邮电大学电工电子基础B实验三(交流参数的测量)
- android 如何自定义桌面,安卓手机桌面设置教程 个性化你的桌面
- 【香蕉oi】耍望节(数位DP+倍增优化)
- artifactory-pro7 部署以及ladp、nginx配置
- 最新版本Portraiture4.1中文版ps磨皮滤镜插件安装包
- mysql.server 脚本解析
- 项目经理:你来设计一下Redis 故障转移、高可用的方案
- Saber cannot find nonlinear system solution 的解决方法
- 人工智能--Embedding层