Hive常见的日期函数

这篇具有很好参考价值的文章主要介绍了Hive常见的日期函数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

hive中常见的几种日期函数的用法

1、fom_unixtime

UNIX 时间戳转日期
语法:fom_unixtime(bigint unixtime[, string format]);
返回类型:string

说明:转化 UNIX 时间戳(从1970-01-01 00:00:00 UTC 到指定时间的秒数)到当前时区的时间格式。

例如:select from_unixtime(1590000000, 'yyyy-MM-dd');
返回:2020-05-21

2、unix_timestamp

获取当前 UNIX 时间戳
语法1:不传参数
unix_timestamp()
返回类型:bigint

说明:获取当前时区的 UNIX 时间戳。可以和from_unixtime一起搭配使用

例如:select unix_timestamp();
返回:1592361030
结合from_unixtime:select from_unixtime(select unix_timestamp(), 'yyyy-MM-dd');
返回:2020-6-17

把日期转为UNIX 时间戳
语法2:传参数“yyyy-MM-dd HH:mm:ss”
unix_timestamp(string date)
返回类型:bigint

说明:转换格式为 “yyyy-MM-dd HH:mm:ss” 的日期到 UNIX 时间戳。日期必须包含时分秒,否则会转换失败,返回 NULL。

例如:select unix_timestamp('2020-06-17 01:01:00');
返回:1592326860

指定格式日期转 UNIX 时间戳
语法3:unix_timestamp(string date, string pattern)
返回类型:bigint

说明:转换 pattern 格式的日期为 UNIX 时间戳。这里要注意传的日期要和后面的格式一一对应,如果传的是年月日:‘20200521’,后面的格式要为:‘yyyyMMdd’。前后不一致会导致转换失败,如果转换失败,则返回 NULL。

例如:select unix_timestamp('20200521', 'yyyyMMdd');
返回:15989990400

3、日期时间转日期函数:to_date

语法:to_date(string timestamp)
返回类型:string

说明:返回日期时间字段中的日期部分。只能是“yyyy-MM-dd” 或 “yyyy-MM-dd HH:mm:ss”,其他格式会返回Null

例如:select to_date('2020-05-21 01:01:00');
返回:2020-05-21

4、日期转年函数:year

语法:year(string date)
返回类型:int

说明:返回日期中的年份。格式同to_date

例如:select year('2020-05-21 01:01:00');
返回:2020

5、日期转月函数:month

语法:month(string date)
返回类型:int

说明:返回日期中的月份。格式同to_date

例如:select month('2020-05-21 01:01:00');
返回:5

6、日期转天函数:day

语法:day(string date)
返回类型:int

说明:返回日期中的天。格式同to_date

例如:select day('2020-05-21 01:01:00');
返回:21

7、日期转小时函数:hour

语法:hour(string date)
返回类型:int

说明:返回日期中的小时。只能是“yyyy-MM-dd HH:mm:ss”,如果参数里没有时分秒会返回‘0’。(必须包含HH:mm:ss,少一个都会返回‘0’!)

例如:select hour('2020-05-21 01:01:10');
返回:1

8、日期转分钟函数:minute

语法:minute(string date)
返回类型:int

说明:返回日期中的分钟。格式同hour

例如:select minute('2020-05-21 01:01:10');
返回:40

9、日期转秒函数:second

语法:second(string date)
返回类型:int

说明:返回日期中的秒。格式同hour

例如:select second('2020-05-21 01:01:10');
返回:10

10、日期转周函数:weekofyear

语法:weekofyear(string date)
返回类型:int

说明:返回日期在该年的周数。格式同to_date

例如:select weekofyear('2020-05-21 01:01:10');
返回:21

11、日期比较函数:datediff

语法:datediff(string enddate, string startdate)
返回类型:int

说明:返回结束日期减去开始日期的天数。结束日期在前,开始日期在后,否则会返回负数。格式同to_date

例如:select datediff('2020-05-21', '2020-05-20');
返回:1

12、日期增加函数:date_add

语法:date_add(string startdate, int days)
返回类型:string

说明:返回日期 startdate 增加 days 天后的日期。int days也可以传负数,为负数时就是减去days天后的日期

例如:select date_add('2020-05-21', 10);
返回:2020-05-31

13、日期减少函数:date_sub

语法:date_sub(string startdate, int days)
返回类型:string

说明:返回开始日期 startdate 减少 days 天后的日期。同date_add

例如:select date_sub('2020-05-21', 10);
返回:2020-05-11
关于其中的组合用法,大家可以自己去探索。文章来源地址https://www.toymoban.com/news/detail-846412.html

到了这里,关于Hive常见的日期函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Hive数据清洗中常见的几个函数

    在Hive中,数据清洗是一个重要的任务之一,通常涉及到对数据进行过滤、修改和转换等操作,以使其更易于使用和分析。常用的数据清洗技术包括:数据去重、空值填充、数据格式化、数据类型转换、数据分区等。这里简单记录几个常用的数据清洗函数,后期会继续增加。

    2024年02月06日
    浏览(52)
  • 0401hive入门-hadoop-大数据学习.md

    Apache Hive是一个开源的数据仓库查询和分析工具,最初由Facebook开发,并后来捐赠给Apache软件基金会。Hive允许用户使用SQL语言来查询和分析存储在Hadoop分布式文件系统(HDFS)中的大规模数据集。它的设计目标是使非技术用户能够轻松地在Hadoop集群上执行数据查询和分析任务,

    2024年02月09日
    浏览(43)
  • Hive常用的日期函数

    注意: current_timestamp() 获取的时UTC默认时区。 给定一个时间戳可基于 from_utc_timestamp/to_utc_timestamp 进行转换。 注意: nbsp;nbsp; 如果当前年的第一个周,天数超过3天,那就是当前年的第一周; nbsp;nbsp; 如果当前年的第一个周,天数小于等于3天,那就是上一年的最后一周。 wee

    2024年02月07日
    浏览(41)
  • Hive日期函数详细讲解

    Hive 提供了一系列的内建日期函数,用于处理日期和时间数据。以下是您提到的日期函数的详细讲解,包括案例和使用注意事项: FROM_UNIXTIME() 功能 :将 Unix 时间戳(秒为单位)转换为日期时间格式。 语法 : FROM_UNIXTIME(unix_timestamp[, format]) 案例 : SELECT FROM_UNIXTIME(1609459200);  

    2024年01月20日
    浏览(90)
  • Hive-时间日期&trunc-日期与数字截取函数

    一、时间日期函数 1、获取当前时间 2、日期转时间戳 3、时间戳转日期 二、trunc - 日期与数字截取函数 1、日期截取 2、数字截取

    2024年02月11日
    浏览(44)
  • Hive时间日期函数一文详解+代码实例

    目录 前言 一、HiveSQL运行过程 二、Hive时间函数 1.获取当前时间 1.current_date() 2. current_timestamp() 3. unix_timestamp() 2.获取指定时间维度 1. year() 2.quarter() 3.month() 4.day() 5.hour() 6.minute() 7.second 8.weekofyear() 9. dayofweek()  10.last_day()  11.next_day() 12.trunc()  3.时间格式转换  1.to_date() 2. from_un

    2024年02月02日
    浏览(43)
  • 1/50 hive sql 日期处理函数

    目录 一、获取当前时间 二、获取指定时间 三、转换时间格式 【1】to_date(string timestamp) 【2】date_format(date string timestamp,string format) 【3】from_unixtime(bigint unixtime,string format) 【4】unix_timestamp(date string timestamp,string pattern)  【5】其余格式的指定转换 regexp_replace()、from_unixtime(unix_ti

    2023年04月25日
    浏览(46)
  • Hive日期函数应用之月份差值计算

    目前计算Hive月份差值有多种方法,下面介绍两种方法进行计算,各有优缺点 一个常见的方法是首先将日期转换为 Unix 时间戳(如果它们还不是的话),然后通过计算时间戳之间的差值,并将这个差值转换为月份。然而,这种方法并不总是准确的,因为它假设每个月都有相同

    2024年01月22日
    浏览(45)
  • 大数据学习:Hive常用函数

    1.1 Hive命令行 查看hive命令的参数 语法结构: hive [-hiveconf x=y]* [-i filename]* [-f filename|-e query-string][-S] 说明: -i 从文件初始化HQL。 -e从命令行执行指定的HQL -f 执行HQL脚本 -v 输出执行的HQL语句到控制台 -p connect to Hive Server on port number -hiveconf x=y Use this to set hive/hadoop configuration vari

    2024年02月11日
    浏览(36)
  • SQL使用技巧(4.1)Hive日期时间函数

    常用的格式化(format)标识符: 本章节每一行代码后都有运算说明和执行结果样例,例如 - - 返回当前系统日期 yyyy-MM-dd, 【2023-04-01】 原生hive中不支持 now() 的写法,经过加工的工具(TDWTDH)可能支持,不绝对。 unix_timestamp() 也会返回一个时间戳,但并不是系统当前时间的时间

    2024年02月12日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包