hive 中最常用日期处理函数

news2024/12/26 2:59:38

hive 常用日期处理函数

在工作中,日期函数是提取数据计算数据必须要用到的环节。哪怕是提取某个时间段下的明细数据也得用到日期函数。今天和大家分享一下常用的日期函数。为什么说常用呢?其实这些函数在数据运营同学手上是几乎每天都在使用的。

技术交流

技术要学会分享、交流,不建议闭门造车。一个人可以走的很快、一堆人可以走的更远。

相关文件及代码都已上传,均可加交流群获取,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友。

方式①、添加微信号:dkl88194,备注:来自CSDN + 加群
方式②、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

序号hive日期函数函数用法含参方式备注
1to_date转化成日期to_date('string  time')to_date('2023-5-20  05:20:00')
   输出:2023-5-20
2from_unixtime转化unix时间戳到当前时区的时间格式from_unixtime(bigint  unixtime,[string format])select  from_unixtime(1684559640,'yyyyMMdd');
   输出:20230520
3unix_timestamp日期转化为unix时间戳unix_timestamp(string  format)select  unix_timestamp();
   输出:1684559640
   select unix_timestamp('2023-05-20 13:14:00');
   输出:1684559640
4date2datekeydate格式转化成datekeydate2datekey(string  date/time)date2datekey('2023-05-20')
   输出:20230520
5datekey2datedatekey格式转化为datedatekey2date(string  datekey)datekey2date('20230520')
   输出:2023-05-20
6datediff返回开始日期减去结束日期的天数datediff(string  enddate ,string begindate)select  datediff('2023-05-20','2023-05-18');
   输出:2
7date_sub返回日期前n天的日期date_sub(string  startdate,int days )date_sub('2023-05-20',2  )
   输出:2023-05-18
8date_add返回日期后n天的日期date_add(string  startdate,int days )date_add('2023-05-20',2  )
   输出:2023-05-22
9year返回日期中的年year(string  date)year('2023-05-20  11:32:12');
   输出:2023
10month返回日期中的月份month(string  date)month('2023-05-20  11:32:12');
   输出:05
11day返回日期中的天day(string  date)day('2023-05-20  11:32:12');
   输出:20
12hour返回日期中的小时hour(string  date)hour('2023-05-20  11:32:12');
   输出:11
13minute返回日期中的分钟minute(string  date)minute('2023-05-20  11:32:12');
   输出:32
14second返回日期中的秒second(string  date)second('2023-05-20  11:32:12');
   输出:12
15weekofyear返回日期在当前周数weekofyear(string  date)weekofyear('2023-05-20  11:32:12');
   输出:20
16unix_timestamp格式是timestamp,精确到秒unix_timestamp(ymdhms2)  - unix_timestamp(ymdhms1)
   -- 计算2个时间相差的秒数
       (unix_timestamp(time1)-unix_timestamp(time2))
   -- 同理,若是计算相差的分钟,就在以上基础再除以60,小时,天数也是同理
       (unix_timestamp(time1)-unix_timestamp(time2))/60
   -- 根据上述的函数计算后,发现有小数点,可用cast优化为以下
       cast((unix_timestamp(time1)-unix_timestamp(time2))/60 as int)
   -- 相差的秒数。
      CAST((unix_timestamp() - unix_timestamp(ymdhms))  % 60 AS int)
   -- 相差的分钟数。
      CAST((unix_timestamp() -  unix_timestamp(ymdhms)) / 60 AS int) % 60
   -- 相差的小时数。
      CAST((unix_timestamp() - unix_timestamp(ymdhms))  / (60 * 60) AS int) % 24
   -- 相差的天数。
      concat(CAST((unix_timestamp() -  unix_timestamp(ymdhms)) / (60 * 60 * 24) AS int) 

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

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

相关文章

Metasploit教程 - 基本命令

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、metasploit版本二、命令1.help2.msfupdate 命令3.search命令 三.Armitage GUI四,扫描总结 我想我得对我的博客做一些美化,而不是只有…

【Power BI】使用 Power BI 处理结构化复杂表单数据 | 文末送书

文章目录 前言使用 Power BI 处理结构化复杂表单数据案例一、处理标题与内容同行的数据表案例二、处理标题与内容同单元格的数据表 文末总结Power BI 新书推荐 前言 数据处理是数据分析的奠基石,只有使用处理干净的数据,分析才会产生价值。简单而言&…

Nacos AP架构集群搭建(Windows)

手写SpringCloud项目地址,求个star github:https://github.com/huangjianguo2000/spring-cloud-lightweight gitee:https://gitee.com/huangjianguo2000/spring-cloud-lightweigh 目录: 一:初始化MySQL 二:复制粘贴三份Nacos文…

【设计模式】拦截过滤器模式

拦截过滤器模式(Intercepting Filter Pattern)用于对应用程序的请求或响应做一些预处理/后处理。定义过滤器,并在把请求传给实际目标应用程序之前应用在请求上。过滤器可以做认证/授权/记录日志,或者跟踪请求,然后把请…

Docker启动相关的命令

1.Docker服务相关命令 操作daemon CentOS7版本启动docker systemctl start docker systemctl status docker停掉docker服务: systemctl stop docker重启命令 systemctl restart docker开机自启docker systemctl enable docker2.小结

8.13黄金是否进入下行通道?下周开盘如何布局

近期有哪些消息面影响黄金走势?黄金多空该如何研判? ​黄金消息面解析:周五(8月11日)现货黄金小幅收低,受累于美元走强和美国国债收益率上升,本周录得6月底以来最差单周表现。投资者在评估最新一批通胀报告和消费者信…

欧拉公式之证明

首先,我们考虑复数函数的泰勒级数展开式。对于任意一个复数函数f(z),我们可以将其在za处进行泰勒级数展开: f(z) f(a) f(a)(z-a) f(a)(z-a)^2/2! f(a)(z-a)^3/3! ... 其中f(a)表示f(z)在za处的导数,f(a)表示f(z)在…

Docker查看、创建、进入容器相关的命令

1.查看、创建、进入容器的指令 用-it指令创建出来的容器,创建完成之后会立马进入容器。退出之后立马关闭容器。 docker run -it --namec1 centos:7 /bin/bash退出容器: exit查看现在正在运行的容器命令: docker ps查看历史容器&#xff0…

【前端】求职必备知识点4-CSS:flex、隐藏元素(7种方法)、单位

文章目录 flex隐藏元素(7种方法)不占位置占位置 单位思维导图 flex 【前端】CSS3弹性布局(flex)、媒体查询实现响应式布局和自适应布局_css媒体查询 自适应_karshey的博客-CSDN博客 flex缩写: flex-grow 和 flex-shr…

聚类与回归

聚类 聚类属于非监督式学习(无监督学习),往往不知道因变量。 通过观察学习,将数据分割成多个簇。 回归 回归属于监督式学习(有监督学习),知道因变量。 通过有标签样本的学习分类器 聚类和…

vs使用def导出文件简介

vs使用def导出文件简介 1.首先需要创建一个dll项目,否则没地方配置使用def文件的指向 2.定义一系列函数并创建一个def文件 3.配置使用def文件的指向编译即可 配置到导出格式时候可以通过NONANE选项使到处函数的符号名字为空,X为导出的序号&#xff0c…

SQL-每日一题【1378. 使用唯一标识码替换员工ID】

题目 Employees 表: EmployeeUNI 表: 展示每位用户的 唯一标识码(unique ID );如果某位员工没有唯一标识码,使用 null 填充即可。 你可以以 任意 顺序返回结果表。 返回结果的格式如下例所示。 示例 1&a…

04 - 分离头指针情况、理解HEAD和branch

查看所有文章链接:(更新中)GIT常用场景- 目录 文章目录 1. 分离头指针2. HEAD和branch2.1 branch的一些操作2.2 HEAD 1. 分离头指针 分离头指针detached HEAD是一种HEAD指针指向了某一个具体的 commit id,而不是分支的情况。 切换…

D. Andrey and Escape from Capygrad Round 892 (Div. 2) 1859D

Problem - D - Codeforces 题目大意:在一个从0到1e9的数轴上,有n个传送门,每个传送门有4个参数,l,r,a,b,可以从[l,r]之间的任意内进入传送门,并传送到[a,b]之间的任意位置,[l,r]一定包含[a,b]&…

使用Python解析通达信本地lday数据结构

通达信软件中的vipdoc是一个存储股票行情数据的文件夹。在通达信软件的安装目录下,可以找到一个名为vipdoc的文件夹,里面存放着各个股票的分时、日线、周线、月线等行情数据文件。这些数据文件可以用于自定义分析和回测股票的走势和交易策略,…

第 358 场LeetCode周赛题解

A 数组中的最大数对和 数据范围小&#xff0c;直接暴力枚举数对 class Solution { public:int mx(int x) {//返回10进制表示的数的最大数字int res 0;for (; x; x / 10)res max(res, x % 10);return res;}int maxSum(vector<int> &nums) {int n nums.size();int r…

LVS简介及LVS-DR搭建

目录 一. LVS简介&#xff1a; 1.简介 2. LVS工作模式&#xff1a; 3. LVS调度算法&#xff1a; 4. LVS-DR集群介绍&#xff1a; 二.LVS-DR搭建 1.RS配置 1&#xff09;两台RS&#xff0c;需要下载好httpd软件并准备好配置文件 2&#xff09;添加虚拟IP&#xff08;vip&…

使用GUI Guider工具开发嵌入式GUI应用 (2) - 在MCU上部署源码

使用GUI Guider工具开发嵌入式GUI应用 (2) - 在MCU上部署源码 文章目录 使用GUI Guider工具开发嵌入式GUI应用 (2) - 在MCU上部署源码引言创建LVGL基本MCU工程获取移植LVGL的源码工程通过bootloader使用外扩qspiflash存储大尺寸固件程序 创建LVGL应用源码在GUI Guider中创建新项…

【MySQL】Java实现JDBC编程

文章目录 1. JDBC2. 添加驱动包3. 编程3.1 创建数据源3.2 与数据库建立连接3.3 构造SQL语句3.4 执行SQL语句3.5 释放资源&#xff0c;关闭连接 1. JDBC 数据库编程必须掌握至少一门编程语言&#xff0c;一种数据库&#xff0c;会导入数据库驱动包。 操作和连接不同数据库都需要…

jquery发送ajax练习

jquery发送ajax练习 工具代码运行结果 工具 HBuilder X 代码 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>通过ajax进行图片的提取和显示</title><style>div{background-color: beige;color: red;font-s…