Hive学习(12)Hive常用日期函数

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

1、hive返回当天三种方式

select current_date; --返回年月日
--2017-06-15
select current_timestamp;	--返回年月日时分秒
--2017-06-15 19:54:44
SELECT from_unixtime(unix_timestamp());
--2017-06-15 19:55:04

2、from_unixtime:转化unix时间戳到当前时区的时间格式

select from_unixtime(1323308943,’yyyyMMdd’);
--输出:20111208

3、unix_timestamp:获取当前unix时间戳

select unix_timestamp();
--输出:1430816254
select unix_timestamp('2015-04-30 13:51:20');
--输出:1430373080

4、year:返回日期中的年

select year('2015-04-02 11:32:12');
--输出:2015

5、month:返回日期中的月份

select month('2015-12-02 11:32:12');
--输出:12

6、day:返回日期中的天

select day('2015-04-13 11:32:12');
--输出:13

7、hour:返回日期中的小时

select hour('2015-04-13 11:32:12');
--输出:11

8、minute:返回日期中的分钟

select minute('2015-04-13 11:32:12');
--输出:32

9、second:返回日期中的秒

select second('2015-04-13 11:32:56');
--输出:56

10、weekofyear:返回日期在当前周数

select weekofyear('2015-05-05 12:11:1');
--输出:19

11、datediff:返回开始日期减去结束日期的天数

select datediff('2015-04-09','2015-04-01');
--输出:8

12、date_sub:返回日期前n天的日期

select date_sub('2015-04-09',4);
--输出:2015-04-05

13、date_add:返回日期后n天的日期

select date_add('2015-04-09',4);
--输出:2015-04-13

14、from_unixtime+ unix_timestamp Hive中yyyymmdd和yyyy-mm-dd日期之间的切换

思想:先转换成时间戳,再由时间戳转换为对应格式。
--20171205转成2017-12-05 
select from_unixtime(unix_timestamp('20171205','yyyymmdd'),'yyyy-mm-dd') from dual;

--2017-12-05转成20171205
select from_unixtime(unix_timestamp('2017-12-05','yyyy-mm-dd'),'yyyymmdd') from dual;

15:Hive中取最近30天数据

datediff(CURRENT_TIMESTAMP ,gmt_create)<=30 

16、Hive中 两个日期相差多少小时

select (unix_timestamp('2018-05-25 12:03:55') - unix_timestamp('2018-05-25 11:03:55'))/3600
--输出:1

17、Hive中 两个日期相差多少分钟

select (unix_timestamp('2018-05-25 12:03:55') - unix_timestamp('2018-05-25 11:03:55'))/60
--输出:60

18、hive 计算某一个日期属于星期几,如2018-05-20 是星期日

SELECT IF(pmod(datediff('2018-05-20', '1920-01-01') - 3, 7)='0', 7, pmod(datediff('2018-05-20', '1920-01-01') - 3, 7)) 
--输出:7

19、hive返回上个月第一天和最后一天

--上个月第一天
select trunc(add_months(CURRENT_TIMESTAMP,-1),'MM')

select concat(substr(add_months(from_unixtime(unix_timestamp(),'yyyy-MM-dd'),-1),1,7),'-01'); 

--上个月最后一天
select date_sub(trunc(CURRENT_TIMESTAMP,'MM'),1);

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

select to_date('2015-04-02 13:34:12');
--输出:2015-04-02

21、返回当月的第一天

select trunc('2016-08-16','MM') 
--2016-08-01

参考::
https://blog.csdn.net/u013421629/article/details/80450047
https://blog.51cto.com/u_12228/6473685文章来源地址https://www.toymoban.com/news/detail-681927.html

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

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

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

相关文章

  • hql、数据仓库、sql调优、hive sql、python

    HQL(Hibernate Query Language) 是面向对象的查询语言 SQL的操作对象是数据列、表等数据库数据 ; 而HQL操作的是类、实例、属性 数据仓库的定义 英文名称为Data Warehouse,可简写为DW或DWH。 为企业级别的决策制定过程,提供所有类型数据支持的战略集合。 它出于分析性报告和决策支持

    2024年02月03日
    浏览(63)
  • Hive常用日期格式转换

    文章目录 获取当前时间 日期格式转换 返回日期中的年,月,日,时,分,秒,当前的周数 计算日期差值 返回当月或当年的第一天 获取当前时间 获取当前时间戳 select unix_timestamp() 复制 把时间戳转为正常的日期 select from_unixtime(unix_timestamp(),‘yyyy-MM-dd HH:mm:ss’) select from_uni

    2024年01月16日
    浏览(41)
  • [1144]Hive常用日期格式转换

    获取当前时间 获取当前时间戳 Hive中获取毫秒级别的时间戳 把时间戳转为正常的日期 业务中有时存放的是包含毫秒的整数,需要先转换为秒 返回当天日期或时间 Hive中处理毫秒级别的时间戳 将毫秒级别的时间戳转换为指定格式的毫秒时间,SSS代表毫秒 将毫秒级时间转化为毫

    2024年02月03日
    浏览(38)
  • 大数据技术之Hadoop学习(七)——Hive数据仓库

    目录 素材 一、数据仓库简介 1、数据仓库的认识 (1)数据仓库是面向主题的。 (2)数据仓库是随时间变化的。 (3)数据仓库相对稳定 (4)OLTP和OLAP 2、数据仓库的结构 (1)数据源 (2)数据存储及管理 (3)OLAP 服务器 (4)前端工具 3、数据仓库的数据模型 (1)星状模

    2024年02月17日
    浏览(42)
  • 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 时间

    2024年04月10日
    浏览(62)
  • 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)
  • Hive日期函数应用之月份差值计算

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

    2024年01月22日
    浏览(45)
  • 【大数据】Hive SQL语言(学习笔记)

    1)数据库结构 默认的数据库叫做default,存储于HDFS的:/user/hive/warehouse 用户自己创建的数据库存储位置:/user/hive/warehouse/database_name.db 2)创建数据库 comment:数据库的注释说明语句 location:指定数据库在HDFS存储位置,默认/user/hive/warehouse/dbname.db with dbproperties:用于指定一些数

    2024年02月07日
    浏览(45)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包