Hive常用的内置函数

文章目录

  • 聚合类
        • 1.指定列值的数目
        • 2.指定列值求和
        • 3.最大值
        • 4.最小值
        • 5.平均值
        • 6.中位数函数
        • 7.分位数函数
  • 数值类
        • 1.取整函数Round(a)
        • 2.指定精度取整ROUND(double a,int b)
        • 3.向上取整FLOOR()
        • 4.向下取整CEIL()
        • 5.随机数 rand()
        • 6.绝对值函数
  • 日期类
        • 获取当前日期
        • 获取当前时间戳
        • 日期前后
        • 日期间隔
        • bigint类型的时间戳
        • 日期转换函数, 只保留 年月日
        • 日期 提取函数
        • 获取年份
        • 提取月份
  • 字符串
        • 计算长度
        • 截取
        • 大写
        • 小写
        • 去除空格
        • 获取url中的域名
        • 获取搜索内容
        • 字符串分割
        • 从map中取值
        • 从string类型的k-v中取值

聚合类

1.指定列值的数目

count()

2.指定列值求和

sum()

3.最大值

max()

4.最小值

min()

5.平均值

avg()

6.中位数函数

percentile(bigint col,p)

7.分位数函数

percentile(bigint col,0.5)

数值类

1.取整函数Round(a)
select rount(99.4567)

在这里插入图片描述
四舍五入计算

2.指定精度取整ROUND(double a,int b)

取b位小数四舍五入

3.向上取整FLOOR()
4.向下取整CEIL()
5.随机数 rand()

值从0-1

6.绝对值函数

abs()

日期类

获取当前日期
select CURRENT_DATE 

2024-07-03

获取当前时间戳
select CURRENT_TIMESTAMP  #### 2024-07-03 11:11:04
日期前后
select date_sub(CURRENT_DATE,1)
select date_add(CURRENT_DATE,1)
日期间隔
select datediff(CURRENT_DATE,'1991-10-04')
select datediff('2024-05-01','1991-10-04')
bigint类型的时间戳
select unix_timestamp('2020-10-01 00:00:00')

1601510400(秒): 从 1970-01-01 00:00:00 到 2020-10-01 00:00:00 过了多少秒

select unix_timestamp()                   

将 bigint 类型的时间戳转换成 我们想要的日期格式

    select from_unixtime(1719976610,'yyyy-MM-dd hh:mm:ss')select from_unixtime(1719976610,'yyyy-MM')
日期转换函数, 只保留 年月日
select  to_date('2024-04-09 10:09:45')
日期 提取函数
	year | month | day | hour | minute 
获取年份
select   substr('2024-04-09 10:09:45',1,4)
select  year('2024-04-09 10:09:45')
提取月份
select   substr('2024-04-09 10:09:45',6,2)
select  month('2024-04-09 10:09:45')

字符串

计算长度
select length("abcde")
截取
substr()
大写
upper
小写
lower
去除空格

trim

获取url中的域名

parse_url

select parse_url('https://editor.csdn.net/md?not_checkout=1','HOST')

会返回
editor.csdn.net

获取搜索内容

parse_url

select parse_url('https://editor.csdn.net/md?not_checkout=1','QUERY')

会返回
not_checkout=1

字符串分割
select split('abc,xyz,yyy',',')
从map中取值
select  extra2['systemtype'] from user_info
从string类型的k-v中取值
 select  get_json_object(extra1,'$.systemtype') from user_info

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/38639.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++:枚举类的使用案例及场景

一、使用案例 在C中,枚举类(也称为枚举类型或enum class)是C11及以后版本中引入的一种更加强大的枚举类型。与传统的枚举(enum)相比,枚举类提供了更好的类型安全性和作用域控制。下面是一个使用枚举类的案…

(linux系统服务)Linux下yum源配置实战

一、Linux下软件包的管理 1、软件安装方式 ① RPM包管理(需要单独解决依赖问题) ② YUM包管理(需要有网络及YUM仓库的支持,会自动从互联网下载软件,自动解决依赖) ③ 源码安装(安装过程比较…

总体设计在软件设计中的意义

总体设计(High-Level Design, HLD)是软件开发生命周期中的一个关键阶段,旨在从宏观层面定义系统的结构和主要组件。总体设计的目标是为详细设计和实现提供一个清晰的框架和蓝图。 总体设计的意义 明确系统架构:总体设计帮助开发…

基于Java的外卖点餐系统设计与实现

作者介绍:计算机专业研究生,现企业打工人,从事Java全栈开发 主要内容:技术学习笔记、Java实战项目、项目问题解决记录、AI、简历模板、简历指导、技术交流、论文交流(SCI论文两篇) 上点关注下点赞 生活越过…

深⼊理解 JVM 底层原理、垃圾回收机制,能通过mat、jstat进行JVM参数调优

深入理解JVM(Java虚拟机)底层原理和垃圾回收机制是Java开发者和系统管理员的重要技能,尤其是在性能调优方面。下面是一些关键点,帮助你更好地理解这些概念: ### JVM 底层原理 1. **类加载机制**:JVM如何加…

java+mysql教师管理系统

完整源码地址 教师信息管理系统使用命令行交互的方式及数据库连接实现教师信息管理系统,该系统旨在实现教师信息的管理,并根据需要进行教师信息展示。该软件的功能有如下功能 (1)基本信息管理(教师号、姓名、性别、出生年月、职称、学历、学位、教师类型…

25西安电子科技大学研究生政策(最新)

25西安电子科技大学研究生政策(最新) 01全国研究生报名情况 全国研究生报名人数438万,首次下降超36万人。 02西电研究生全日制/非全日制报名情况 西电硕士研究生报考录取情况(包含全日制、非全日制),2024年…

python-数据容器对比总结

基于各类数据容器的特点,它们的应用场景如下: 数据容器的通用操作 - 遍历 数据容器的通用统计功能 容器的通用转换功能 容器通用排序功能 容器通用功能总览

C-特性和新特性

C特性和新特性 C11 C11是C编程语言的一个重要标准版本,是C98标准发布后13年来的第一次重大修正,它引入了许多新特性和改进,极大地增强了C语言的表达能力和开发效率。 C11是C编程语言的一个重要标准版本,由国际标准化组织(ISO)和…

如何在Java中实现自定义数据结构:从头开始

如何在Java中实现自定义数据结构:从头开始 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将探讨如何在Java中实现自定义数据结构&#xff…

一文彻底搞懂Transformer - Input(输入)

一、输入嵌入(Input Embedding) 词嵌入(Word Embedding):词嵌入是最基本的嵌入形式,它将词汇表中的每个单词映射到一个固定大小的向量上。这个向量通常是通过训练得到的,能够捕捉单词之间的语义…

HTTP入门

入门HTTP协议 1. 原理介绍 爬虫就是用程序模拟浏览器的行为,发送请求给服务器,获取网页的内容,解析网页数据。 要学会爬虫,先要了解浏览器是如何和服务器交流的。浏览器通过HTTP协议和服务器交流。 2. HTTP协议简介 2.1…

第4篇 区块链的优势与挑战:为什么区块链如此重要?

区块链听起来像是一种高科技的魔法,很多人都想知道它到底是怎么回事,为什么会引起如此大的关注。今天,我们就来揭开区块链的神秘面纱,看看它的优势和挑战,顺便聊聊为什么它会变得如此重要。 优势篇 1. 去中心化&…

【pg】去除pg数据库字段值中的空格

如何批量去除PostgreSQL数据库字段值中的空格 在处理数据库中的数据时,经常会遇到字段值末尾带有多余空格的问题。这些空格可能是用户输入错误或数据迁移过程中引入的,可能会影响数据的准确性和一致性。本文将介绍如何使用 PostgreSQL 的 SQL 语句批量去…

The Forest Enemy Pack(2D动画角色游戏模型)

这个包包含14个适用于platformer和2d rpg游戏的动画角色。 动画总帧数:1785 用于动画的所有精灵都具有透明背景,并准备有1500x1200和750x600两种尺寸。 对于每个角色,你也可以找到具有单独身体部位的精灵表,这样你就可以轻松地制作自己的动画。它们有PNG和PSD格式。 示例场…

对MVC的理解以及如何实现一个简单的MVC

IOC 容器与 Controller: 在 Spring 框架中,所有的 Controller 都会被 Spring 的 IOC 容器管理。当应用程序启动时,Spring 会扫描所有带有 Controller 注解的类,并将它们作为 Bean 注册到 IOC 容器中。 方法扫描与 Dispatcher&am…

强化学习-5 策略梯度、Actor-Critic 算法

文章目录 1 基于价值( value-based \text{value-based} value-based )算法的缺点2 策略梯度算法2.1 解释2.1.1 分母和分子相消2.1.2 对数函数的导数2.1.3 组合公式2.1.4 总结 3 REINFORCE算法4 策略梯度推导进阶4.1 平稳分布4.2 基于平稳分布的策略梯度…

Python游戏脚本开发之大漠插件

自动化 文章目录 自动化前言一、开发环境二、免注册调用三、创建大漠对象四、注册五、大漠功能调用六、整体代码 前言 大漠插件是集前后台,文字识别,图色,键鼠,窗口,内存,DX,Call等功能于一身的…

HSP_13章 Python_魔术方法

文章目录 P132 魔术方法1. 魔术方法的基本介绍2. 常见的魔术方法2.1 __str__2.2 __eq__2.3 其它的几个魔术方法 P132 魔术方法 参考文档 1. 魔术方法的基本介绍 2. 常见的魔术方法 2.1 str # 请输出Monster[name,job,sal]对象的属性信息 #可以根据需要…

(1, ‘[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1124)

WARNING: Retrying (Retry(total4, connectNone, readNone, redirectNone, statusNone)) after connection broken by SSLError(SSLError(1, [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1124))): /pypi/simple/urllib3/ pip install的时候遇到这个错误 第一步…