Hive:struct数据类型,内置函数(日期,字符串,类型转换,数学)

struct

STRUCT(结构体)是一种复合数据类型,它允许你将多个字段组合成一个单一的值, 常用于处理嵌套数据,例如当你需要在一个表中存储有关另一个实体的信息时。你可以使用 STRUCT 函数来创建一个结构体。STRUCT 函数接受多个参数,每个参数都是结构体的一个字段。字段可以是任何数据类型,包括其他结构体。

示例

数据准备

查询

struct结构体不能使用explode展开数据

Hive内置函数

函数查看

示例

日期函数

补充: 查看当前用户,

使用场景: 封装代码的日志,记录运行代码的用户

在 Unix 和类 Unix 系统中,时间是从 1970 年 1 月 1 日 00:00:00 UTC 开始计算的,这个时间点被称为 Unix 纪元(Epoch)。unix_timestamp() 函数返回的是从 Unix 纪元到指定日期和时间的秒数。

示例1

示例2

查询结果显示为 -28800,这实际上是一个时间偏移量,表示 UTC 时间与某个特定时区(如 UTC+8)之间的差异。具体来说,-28800 秒相当于 -8 小时,这意味着查询结果考虑了时区差异。

使用pattern的场景, 时间格式默认是年月日时分秒, 有些数据的格式不是标准时间格式,直接写系统无法识别,返回NULL

示例1

示例2

注:和oracle一样,格式不区分大小写

不指定格式时,默认返回的是年月日 时分秒

示例1

示例2

Hive 不支持日期之间的加减,需要借助函数

日期和时间可以直接以字符串的形式使用,Hive 会自动将这些字符串解析为日期或时间类型。(隐式转换)

注: 日期的格式是'2020-01-17', 不能是其他格式

示例1

示例2

day()和dayofmonth()返回值是相同的, day()相当于截取日期里面的日,dayofmonth()返回的是当月的第几天

示例1

示例2

示例3

示例

类似于oracle的to_char函数

示例1

示例2

w今年的第几周, iw不支持

字符串函数

示例

类型转换函数

数学函数

其他函数

isnull() 函数用于检查其参数是否为 NULL。如果参数是 NULL,则返回 true;否则返回 false

isnotnull()与之相反

只支持两个条件的比较

示例1

示例2

参数是一个字符串 'null',而不是 NULL

示例3

相关推荐
Database_Cool_1 天前
云数据仓库开通指南:阿里云 AnalyticDB MySQL 10 分钟从 0 到分析实战教程
数据仓库·mysql·阿里云
曾阿伦2 天前
Windows 下运行 Hadoop 并部署到 AWS EMR 指南
hadoop·windows·aws
罗政3 天前
基于AI工作流的多渠道销售数据仓库清洗统计实践
数据仓库
极光代码工作室3 天前
基于Spark的日志监控与分析平台
大数据·hadoop·python·spark·数据可视化
迈巴赫车主4 天前
湖仓一体(Data Lakehouse)简介
大数据·数据仓库·数据湖·湖仓一体
liuxiaowei34 天前
Winform+WPF双框架实战:喷涂工艺SCADA上位机从0到1搭建(附采集监控源码+车间踩坑实录)
大数据·hadoop·wpf
humbinal5 天前
同时支持 gui & cli 的 parquet 文件查看工具,高性能小清新!
hive·python·rust·spark·开源·github·parquet
RestCloud7 天前
ETL是什么?全域数据集成平台核心能力解析
数据仓库·etl·数据清洗·数据处理·etlcloud·数据集成工具
Gent_倪7 天前
万字详解:数据库、数据仓库、数据湖、湖仓一体
数据库·数据仓库·spark
Microsoft Word7 天前
把RAG从 “能跑” 做到上线
数据仓库·人工智能