IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Hive的内置函数 -> 正文阅读

[大数据]Hive的内置函数

参考文章:https://www.cnblogs.com/qingyunzong/p/8744593.html;????????????????? ? ? ? ??https://blog.csdn.net/liu123641191/article/details/80845411

首先,放一个结构图:

一、数学函数

1、round(四舍五入):

round(45.926, 2)????????-->????????45.93????????// 四舍五入保留两位小数? ?

round(45.926, 1)? ? ? ? -->? ? ? ? 45.9? ? ?? ? ?//四舍五入保留一位小数

round(45.926, 0)? ? ? ? -->? ? ? ? 46.0? ? ? ? ??

round(45.926, -1)? ? ? ?-->? ? ? ? 50.0

round(45.926, -2)? ? ? ?-->? ? ? ? 0.0

2、ceil(向上取整):

ceil(45.9)? ? ? ? -->? ? ? ? 46

3、floor(向下取整):

floor(45.9)? ? ? ? -->? ? ? ? 45

二、字符函数

1、lower(转小写):

2、upper(转大写):

hive> select lower('Hello World'), upper('Hello World');
OK
hello world? ? ? ? HELLO WORLD

3、length(字符串长度,字符数):

hive> select length('Hello world'), length('你好');
OK?
11? ? ? ? 2

3、concat(字符串拼接):

hive> select concat('Hello', '? world');
OK
Hello World?

5、substr(求子串):

substr(a,n):从字符串a中,第n位开始取,取右边所有的字符。

substr(a,m,n):从字符串a中,第m位开始取,取n个字符。

注意:字符串中的空格也算占用一个字符。

6、trim(去前后空格):

hive> select substr(' Hello World ', 3);
OK
Hello World

7、lpad(左填充):

8、rpad(右填充):

hive> select lpad('abcd', 10, '*'), rpad('abcd',10,'*');
OK
******abcd? ? ? ? abcd******

三、收集函数

1、size(返回map集合的个数):

格式:size(map(<key,value>,<key,value))

?四、转换函数

1、cast(转换数据类型):

hive> select cast(1 as float);
OK
1.0
hive> select cast('2018-06-28' as date);
OK
2018-06-28

五、日期函数

1、to_date(从一个字符串中取出为日期的部分):

hive> select to_date('2018-06-28 17:19:36');
OK
2018-06-28

2、year、month、day(从一个日期中取出相应的年、月、日):

hive> select year('2018-06-28 17:19:36'),month('2018-06-28 17:19:36'),day('2018-06-28 17:19:36');
OK
2018-06-28
 

3、weekofyear(返回输入日期在该年中是属于第几个星期):

hive> select weekofyear('2018-06-28 17:20:33');
OK
26

4、date_add(在一个日期基础上增加天数):

5、date_sub(在一个日期基础上减去天数):

hive> select date_add('2018-08-21 18:00:36', 2),date_sub('2021-07-15 08:00:00',2);
OK
2018-08-23    2021-07-13

六、条件函数

1、coalesce(从左到右返回第一个不为null的值):

?2、case...when...(条件表达式):

语法格式:case A when B then C [when D then E]* [else F] end

解释:对于A来说,如果判断为B则返回C,如果判断为D则返回E(此处判断条件可为多个),如果以上都不是则返回F。注意,最后还有还有一个end结束符。

例:给员工涨工资,总裁1000,经理800,其他400

select ename,job,sal
    case job when 'president' then sal+1000
             when 'manager' then sal+800
             else sal+400
    end
from emp;

七、聚合函数

1、count(返回行数)

2、sum(组内某列求和)

3、min(组内某列最小值)

4、max(组内某列最大值)

5、avg(组内某列平均值)

以薪资sal为例:

select count(*),sum(sal),max(sal),min(sal),avg(sal) from emp;

八、表生成函数

1、explode:把map集合中每个键值对或数组中的每个元素都单独生成一行的形式

九、总结:

支持的内置函数:

?支持的聚合函数:这里写图片描述

?

?

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-27 11:55:47  更:2021-08-27 11:57:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 16:47:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码