unix_timestamp 时间戳函数用法(hive)

【江协科技STM32】Unix时间戳(学习笔记) Unix时间戳解释 时间戳转换 阅读详情
AI摘要

本文详细介绍了Hive中时间戳与日期的转换方法,包括unix_timestamp、from_unixtime及to_utc_timestamp函数的使用技巧,同时展示了如何处理毫秒级时间戳。

一、unix_timestamp函数用法 
1、unix_timestamp() 得到当前时间戳 
2、如果参数date满足yyyy-MM-dd HH:mm:ss形式,则可以直接unix_timestamp(string date) 得到参数对应的时间戳 
3、如果参数date不满足yyyy-MM-dd HH:mm:ss形式,则我们需要指定date的形式,在进行转换 

select unix_timestamp('2009-03-20')   --1237507200
select unix_timestamp('2009-03-20 00:00:00', 'yyyy-MM-dd HH:mm:ss') --1237507200
select unix_timestamp('2009-03-20 00:00:01', 'yyyy-MM-dd HH:mm:ss') --1237507201

 

二、from_unixtime函数用法 
语法:from_unixtime(t1,’yyyy-MM-dd HH:mm:ss’) 
其中t1是10位的时间戳值,即1970-1-1至今的秒,而13位的所谓毫秒的是不可以的。 
对于13位时间戳,需要截取,然后转换成bigint类型,因为from_unixtime类第一个参数只接受bigint类型。例如: 

select from_unixtime(1237507201,'yyyy-MM-dd HH:mm:ss') -- 2009-03-20 00:00:01
select from_unixtime(1237507200,'yyyy-MM-dd HH:mm:ss') -- 2009-03-20 00:00:00

常用的插入时间为当前系统时间 转换成距离1970的时间戳,再转换成当前时间

select FROM_UNIXTIME(UNIX_TIMESTAMP() ,'yyyy-MM-dd HH:mm:ss') AS W_INSERT_DT

总结

1.Hive中获取时间戳的方式为unix_timestamp()函数,该函数只能够精确到秒级别的时间,对于时间精确到要求高的应用则该函数并不适合。

2.Hive获取当前时间毫秒级别的时间戳时需要使用cast函数将current_timestamp()转为double类型并乘以1000,则得到毫秒级别的时间戳。

3.对于Hive库中存储的毫秒精度的时间戳,为了确保时间精度不损失则需要使用to_utc_timestamp()函数,该函数支持毫秒级别的时间错,但需要指定当前时区。

三  LAST_DAY 函数的用法

last_day 用impala不可以,用hive可以,获取本月月末

SELECT LAST_DAY(CONCAT('${START_DATE}','-01'))  
--传入2019-02  得到 2019-02-28
--传入2019-02-01  得到 2019-02-28

 

 

Hive中TimeStamp获取及转换

1.Hive中使用current_timestamp()函数获取当前时间

select current_timestamp();   --2019-07-04 10:17:08.429275000

使用Hive的current_timestamp()函数获取到当前的时间精确到毫秒。

2.Hive中获取当前时间戳,默认使用unix_timestamp()函数

select unix_timestamp(current_timestamp());   --1562235446

使用Hive的unix_timestamp()函数获取到当前的时间戳为10位的bigint类型数值,该数值只精确到秒级别。

3.Hive中将时间戳转换为日期类型,默认使用from_unixtime ()

select from_unixtime(1543735779, 'yyyy-MM-dd HH:mm:ss:SSS');
--2019-07-04 10:17:26:000

上面的转换结果可以看到时间的毫秒是无法正常获取到,因为时间戳只是精确到秒级别的,from_unixtime()函数也只支持秒级别的时间戳转换。

4.Hive中获取毫秒级别的时间戳

select current_timestamp(),
cast(current_timestamp() as double) as 'timestamp';


current_timestamp()	timestamp
 	current_timestamp()          	timestamp
1	2019-07-04 10:20:34.743662000	1562235634.7436621


这里可以看到获取到了一个13位的数值,该数值精确到毫秒即为当前的时间的时间戳。

5.Hive中处理毫秒级别的时间戳

select to_utc_timestamp(1543736635303, 'GMT');

--2018-12-02 15:43:55.303    --用impala不行

使用Hive提供的to_utc_timestamp()函数将毫秒级别的时间戳转换为相应的时间并且精确到了毫秒,与上一步获取时间戳的时间一致。

select from_unixtime(cast(substring(tistmp,1,10) as bigint),’yyyy-MM-dd HH’) tim ,count(*) cn from hour_data where …

hive中时间日期函数的使用  to_date:日期时间转日期函数 select to_date('2015-04-02 13:34:12'); 输出:2015-04-02 from_unixtime:转化unix时间戳到当前时区的时间格式 select from_unixtime(1323308943,’yyyyMMdd’); 输出:20111208 unix_timestamp:获取当前unix时间戳 阅读详情

相关推荐

浅谈 Unix Timestamp 时间戳

Linux 时间戳通常指的是 Unix 时间戳,即自 1970 年 1 月 1 日 00:00:00 UTC 起经过的秒数。这个时间戳在许多 Unix 系统和类 Unix 系统(包括 Linux)中广泛使用。我们日常工作学习中也是很常用的。 但是很多刚学习的小伙伴对这一串数字不知道如何理解,今天我们就来简单聊聊 Unix 时间戳,相信看完这篇简短的文章,你就可以马上知道这个时间戳的含义和用处啦。

流浪字节的博客 4244

【hive】时间相关函数的使用(时间戳函数unix_timestamp()/from_unixtime()、日期处理函数datediff()/date_sub()/date_add()等)

时间相关函数的使用(时间戳函数unix_timestamp()/from_unixtime()、日期处理函数datediff()/date_sub()/date_add()等)

sodaloveer的博客 1万+

MySQL中的UNIX_TIMESTAMP函数使用详解

总结:UNIX_TIMESTAMP函数在MySQL中是一个非常实用的函数,可以方便地进行日期时间与UNIX时间戳之间的转换。除了将日期时间转换为UNIX时间戳,UNIX_TIMESTAMP函数还可以与其他函数一起使用,进行更复杂的操作。使用UNIX_TIMESTAMP函数可以方便地将日期时间转换为UNIX时间戳,从而可以进行日期时间的比较、计算和排序等操作。UNIX_TIMESTAMP函数是MySQL中一个常用的函数,用于将日期时间转换为UNIX时间戳。上述代码将返回当前日期时间的UNIX时间戳。

SrySmalltalk的博客 2666

Unix时间戳

BKP(Backup Registers)备份寄存器BKP可用于存储用户应用程序数据。当VDD(2.0—3.6V)电源被切断,他们仍然由VBAT(1.8~3.6V)维持供电。当系统在待机模式下被唤醒,或系统复位或电源复位时,他们也不会被复位TAMPER引脚产生的侵入事件将所有备份寄存器内容清除RTC引脚输出RTC校准时钟、RTC闹钟脉冲或者秒脉冲存储RTC时钟校准寄存器用户数据存储容量:20字节(中容量和小容量)/ 84字节(大容量和互联型)BKP基本结构。

m0_49830036的博客 4067

蜻蜓fm爬虫python

本文介绍了一个用于下载蜻蜓FM音频书籍的Python脚本实现。该脚本主要功能包括:1)通过账号密码登录获取认证信息;2)从目标书籍主页提取版本信息;3)获取书籍节目总数和分页信息;4)生成节目下载链接(使用HMAC-MD5加密算法生成请求签名);5)下载音频文件并保存。脚本采用多种反爬措施:设置User-Agent模拟浏览器行为、使用动态时间戳、HMAC-MD5签名验证等,有效规避简单的反爬机制。整个流程包括登录认证、获取书籍信息、生成下载链接和保存音频文件四个步骤,实现自动化批量下载功能。

野猫炫的博客 912

【渗透工具】内网多级代理工具Venom详细使用教程

Venom是一款为渗透测试人员设计的使用Go开发的多级代理工具。Venom可将多个节点进行连接,然后以节点为跳板,构建多级代理。渗透测试人员可以使用Venom轻松地将网络流量代理到多层内网,并轻松地管理代理节点。

TT小子的博客 3757

【Hive】FROM_UNIXTIME() 和 UNIX_TIMESTAMP()时间戳函数用法

今天用 hive 进行 ETL时,需要对时间戳进行格式化, 其中还需要用到正则表达式及一些时间函数,在这里简单总结一下unix_timestamp、from_unixtime的用法,仅供参考。 先看下这段 HQL : CREATE TEMPORARY TABLE user_event STORED AS ORC AS SELECT t.user_id, t....

云祁QI 1万+

S7-200SMART PLC中进行MODBUS RTU通信的3种方法(1)

S7-200SMART PLC中进行MODBUS RTU通信的3种方法(1)

Robot_PLC_HMI_Automation 4237

unix_timestamp 时间戳函数用法(hive)

一、unix_timestamp函数用法 1、unix_timestamp() 得到当前时间戳 2、如果参数date满足yyyy-MM-dd HH:mm:ss形式,则可以直接unix_timestamp(string date) 得到参数对应的时间戳 3、如果参数date满足yyyy-MM-dd HH:mm:ss形式,则我们需要指定date的形式,在进行转换 unix_timestam

CZ626626的博客 11万+

杰理-tone

低音质格式切换高音质格式:切换提示音格式,未导出,编译下载没有提示音;提示音导出,再次编译下载,提示音正常高音质格式切换低音质格式:不需要导出,直接编译下载,提示音正常。

m0_67447112的博客 955

Jetson AGX Orin平台Jetpack5升级Jetpack6,自研载板USB不工作问题调试

1. 问题描述将AGX Orin工业的新板放到定制的载板上当在ubuntu 22和Jetpack 6.1上使用SDKManager刷机时,lsusb为空,并且在引导时没有发现/注册xusb设备。USB C端口正常打开并供电,但似乎没有数据传输。在Ubuntu 18 Jetpack 5.1.4 SDKManager上同样刷机之后,usb C集线器在引导时被正确地发现,显示在lsusb中,并识别/挂载外部驱动器。

jzwjzw19900922的博客 1509

【Hive】FROM_UNIXTIME() 和 UNIX_TIMESTAMP()时间戳函数用法_hive from_unix

D有英语前缀的月份的日期(1st,2nd,3rd,等等。%w一个星期中的天数(0=Sunday~6=Saturday)%U星期(0~52),这里星期天是星期的第一天。%u星期(0~52),这里星期一是星期的第一天。%d月份中的天数,数字(00~31)%a缩写的星期名字(Sun~Sat)%e月份中的天数,数字(0~31)%b缩写的月份名字(Jan~Dec)%i分钟,数字(00~59)%m月,数字(01~12)%c月,数字(1~12)%h小时(01~12)

2501_90250949的博客 650

重回童年的经典系列☀️| 【坦克大战3D版】游戏制作+解析

带你重回童年的经典系列——坦克大战3D版制作,感兴趣的可以看看呀~

努力前行,总会成为自己心中的那道光 5万+

fwrite php time unixtimestamp_「unix_timestamp」unix_timestamp 时间戳函数用法(hive) - seo实验室...

unix_timestamp一、unix_timestamp函数用法1)返回当前时间的时间戳select unix_timestamp();2)如果参数date满足yyyy-MM-dd HH:mm:ss形式,则可以直接unix_timestamp(string date) 得到参数对应的时间戳或者满足yyyy-MM-dd形式select unix_timestamp('2018-12-05 01:...

weixin_39735012的博客 104

第 5 篇:责任链模式 (Chain of Responsibility) —— 协议栈的流水线

本文介绍了责任链模式在嵌入式通信协议解析中的应用。针对传统"面条式"代码维护困难的问题,提出将各协议解析器解耦为独立处理单元,通过链表形式串联。文章详细展示了模式实现:定义抽象处理者接口、实现具体协议处理器、构建链表管理器。该方案具有内存占用低(O(1)栈空间)、可动态扩展、支持优先级调整等优势,并探讨了性能优化策略及动态插件系统等扩展应用,为嵌入式通信协议处理提供了清晰的架构方案。

一路往蓝-Anbo 的博客 177

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

「Hive」与「MySQL」中日期与时间戳转换函数:UNIX_TIMESTAMP() 和FROM_UNIXTIME()的用法与区别

「Hive」与「MySQL」中日期与时间戳转换函数:UNIX_TIMESTAMP() 和FROM_UNIXTIME()的用法与区别。

满眼凄迷i 4100

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Hive的时间处理函数from_unixtime和unix_timestamp

hive时间处理函数from_unixtime和unix_timestamp的实现以及实例,从而方便后续的时间处理。

小蚯蚓的博客 3552

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

hive如何获取当前时间

hive有一个获得当前时区的UNIX时间戳:unix_timestamp 语法: unix_timestamp() 返回值: bigint 说明: 获得当前时区的UNIX时间戳 select unix_timestamp() ; 我们需要的不是时间戳而是具体的当前时间:from_unixtime 语法: from_unixtime(bigint unixtime[, string format]) 举例:select from_unixtime(unix_timestamp() ,...

wdyliuxingfeiyang的博客 1万+
上一篇: 导出微信添加的自定义表情(动图)
下一篇: hive 字符串前有 ’ 符号
mingming20547
博客等级 码龄17年 80粉丝 74原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值