当前位置: 首页 > article >正文

大数据学习(131)-Hive数据分析函数总结

​​​​🍋🍋大数据学习🍋🍋

🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。
💖如果觉得博主的文章还不错的话,请点赞👍+收藏⭐️+留言📝支持一下博主哦🤞


1.CAST函数用于将一种数据类型的表达式显式转换为另一种数据类型。它的语法如下:

CAST(expression AS data_type)

其中,expression是任何有效的SQL表达式,data_type是目标数据类型。

CURRENT_DATE 函数是 SQL 中的一个日期/时间函数,用于返回当前的本地日期。它不带任何参数,并且返回的数据类型为 DATE。

3.to_date函数用于将字符串转换为日期类型。与to_date相对应的是to_char函数,它将日期类型转换为字符串类型。这在需要将日期数据转换为特定格式的字符串时非常有用。

SELECT to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss') FROM dual; -- 将当前日期转换为字符串

4.LEAD() 函数 是一种窗口函数,允许您从当前行向前查看多行并访问这些行的数据。它对于计算同一结果集中当前行和后续行之间的差异非常有用。与 LAG() 函数类似,LEAD() 函数可以帮助我们在查询结果中进行行间偏移。

语法:

LEAD(<expression>[, offset[, default_value]]) OVER (PARTITION BY <expr> ORDER BY <expr>)

expression: LEAD() 函数返回的值。

offset: 从当前行向前的行数,必须是非负整数。如果省略,默认值为 1。

default_value: 如果没有后续行,则返回的默认值。如果未指定,默认返回 NULL。

5.concat函数用于将多个字符串连接成一个字符串。如果有任何一个参数为NULL,则返回值为NULL。

示例

SELECT CONCAT('Hello', ' ', 'World') AS result;

-- 结果: Hello World

CONCAT_WS函数

CONCAT_WS函数是CONCAT的特殊形式,用于在连接字符串时指定分隔符。第一个参数是分隔符,后面的参数是要连接的字符串。

示例

SELECT CONCAT_WS('-', '2023', '08', '15') AS result;

-- 结果: 2023-08-15

注意事项

CONCAT函数如果有任何一个参数为NULL,则返回值为NULL。

CONCAT_WS函数会忽略任何分隔符参数后的NULL值,但不会忽略空字符串。

6.

1、RANK()

在计算排序时,若存在相同位次,会跳过之后的位次。

例如,有3条排在第1位时,排序为:1,1,1,4······

2、DENSE_RANK()

这就是题目中所用到的函数,在计算排序时,若存在相同位次,不会跳过之后的位次。

例如,有3条排在第1位时,排序为:1,1,1,2······

7.date_format函数用于格式化日期时间,将日期按照指定的格式输出。这个函数非常有用,尤其是在处理大数据时,需要将日期转换为特定格式以便于分析和展示。

语法:

date_format(date, format):

其中date参数是合法的日期,format参数是规定日期输出的格式。

8.在使用DATEDIFF函数时,你需要指定三个参数:datepart、startdate和enddate。datepart参数决定了返回值的时间单位,可以是年(year)、季度(quarter)、月(month)、周(week)、日(day)、小时(hour)、分钟(minute)、秒(second)等。startdate和enddate则是你要比较的两个日期。

以下是一些DATEDIFF函数的使用示例:

-- 计算两个日期之间相差的年数

SELECT DATEDIFF(year, '2010-12-31', '2019-01-01') AS YearDiff;

-- 计算两个日期之间相差的月数

SELECT DATEDIFF(month, '2018-01-01', '2019-01-01') AS MonthDiff;

9.TRUNC 函数也可以用于截断日期到指定的时间单位。其语法格式如下:

TRUNC(date, [fmt])

date:需要截断的日期。

fmt:指定截断的时间单位,默认为天。

常见的时间单位包括:

'YYYY':截断到年。

'MM':截断到月。

'DD':截断到天。

'HH':截断到小时。

'MI':截断到分钟。

10.EXTRACT() 函数的基本用法:

EXTRACT() 函数接受两个参数:时间单位和要从中提取的日期时间值。

时间单位可以是年份 (YEAR)、月份 (MONTH)、日期 (DAY)、小时 (HOUR)、分钟 (MINUTE)、秒钟 (SECOND) 等等。

返回提取出的指定时间单位的值。

http://www.lryc.cn/news/2402990.html

相关文章:

  • SCAU数值计算OJ
  • c++ 基于openssl MD5用法
  • Python打卡第46天
  • Unity优化篇之DrawCall
  • SpringCloud学习笔记-2
  • C++.OpenGL (9/64)复习(Review)
  • Spring Boot-面试题(52)
  • 从混乱到秩序:探索管理系统如何彻底改变工作流程
  • 最新研究揭示云端大语言模型防护机制的成效与缺陷
  • HTML5+CSS3+JS小实例:具有粘性重力的磨砂玻璃导航栏
  • CVAT标注服务
  • SpringBoot+Mybatisplus配置多数据源(超级简单!!!!)
  • Git Svn
  • Python爬虫伪装
  • Webpack的基本使用 - babel
  • LLaMA-Factory的5种推理方式总结
  • 链游技术破壁:NFT资产确权与Play-to-Earn经济模型实战
  • 为什么HDI叠孔比错孔设计难生产
  • 数据分析实战2(Tableau)
  • 游戏开发中的CI/CD优化案例:知名游戏公司Gearbox使用TeamCity简化CI/CD流程
  • Linux --TCP协议实现简单的网络通信(中英翻译)
  • LlamaIndex 工作流简介以及基础工作流
  • 如何利用Elastic Stack(ELK)进行安全日志分析
  • 创客匠人:以 AI 利器赋能创始人 IP 打造,加速知识变现新路径
  • Opencv中的copyto函数
  • TeamCity Agent 配置完整教程(配合 Docker Compose 快速部署)
  • 基于深度强化学习的Scrapy-Redis分布式爬虫动态调度策略研究
  • 在 Ubuntu 24.04 LTS 上安装 Jenkins 并配置全局工具(Git、JDK、Maven)
  • Tika Server:企业级文档内容解析的轻量级服务化方案
  • LMG1020YFFR 电子元器件详解