背景

日期计算平时在业务取数时经常涉及到,但是数据库中经常存放着不同的日期格式,有的存放是时间戳、有的是字符串等,这时需要对其进行转换才能提取到准确的数据,这里介绍的均是hive里面的函数功能,以下内容均是业务的数据需求经常使用的部分

时间戳

unix时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒,一般为10位的整数

一个在线工具:https://tool.lu/timestamp/

时间戳

字符串日期
如:'2021-10-21 19:25:50','2021-10-21 20:25:50.0','2021-10-21 20:25'

日期格式转换

时间戳--->正常的日期格式

  • 获取当前时间戳
select unix_timestamp()
  • 把时间戳转为正常的日期
select from_unixtime(unix_timestamp(),'yyyy-MM-dd hh:mm:ss') as dt
  • 业务中有时存放的是包含毫秒的整数,需要先转换为秒
select from_unixtime(cast(create_time/1000 as bigint),'yyyyMMdd') as dt

字符串日期
假如数据库存放的是格式为:"yyyy-MM-dd hh:mm:ss"

  • 截取日期部分
select substr('2021-10-22 17:34:56',1,10)
2021-10-22
  • 字符串强制转换,获取日期
select to_date('2021-10-22 17:34:56')
2021-10-22
  • 也可以通过date_format实现
select date_format('2021-10-22 17:34:56','yyyy-MM-dd')
2021-10-22

系统当前日期

  • 当前日期
select current_date();
2021-10-22
  • 字符串日期与系统当前日期比较,这个在业务中经常有用到
select substr('2021-10-22 17:34:56',1,10)>current_date()
false

前一日/昨日

select date_sub(current_date(),1);
2021-10-21

前一日12点/昨日12点
在业务中与截取的字符串日期进行比较时用

select concat(date_format(date_sub(current_date(),1),'yyyy-MM-dd'),' ','12');
2021-10-21 12

最近一个月/30天

select date_sub(current_date(),30);
2021-09-22

当月第一天
业务中经常用在滚动计算当月每日的业绩数据

select date_format(to_date(trunc(current_date(),'MM')),"yyyy-MM-dd");
2021-10-01

日期格式转换 yyyyMMdd--->yyyy-MM-dd

select from_unixtime(unix_timestamp('20211022','yyyyMMdd'),"yyyy-MM-dd");
2021-10-22

两个日期相隔天数

select datediff('2021-10-22', '2021-10-01');
21

历史相关文章

  • Hive HQL支持的2种查询语句风格,你喜欢哪一种?
  • Python 基于datetime库的日期时间数据处理

以上是自己实践中遇到的一些问题,分享出来供大家参考学习,欢迎关注微信公众号:DataShare ,不定期分享干货


http://www.taodudu.cc/news/show-4628979.html

相关文章:

  • 数据分析师常用的 Linux 命令总结
  • Python 利用数据分布直方图来确定合适的阈值
  • 利用Python计算两个地理位置之间的中点
  • pandas 错误提醒:FutureWarning: elementwise comparison failed;
  • Python 基于pyecharts自定义经纬度热力图可视化
  • Python pandas 里面的数据类型坑,astype要慎用
  • Python数据处理中 pd.concat 与 pd.merge 区别
  • Python 利用聚类算法对图片进行颜色压缩
  • Hive 中的各种常用set设置
  • Python 利用4行代码实现图片灰度化
  • Python 字符串格式化 f-string f“{}“ .format
  • apollo服务器集成java_Apollo Server 集成性能监控
  • SQL语句大全 作者:阿多
  • MD5算法在PB中的实现(转载自 - 阿多米 - 博客园)
  • E站账号cookie分享_不用输入密码无风险?扫描二维码登录QQ账号也不安全!
  • E.164号码,E.214号码,E.212号码
  • E码通电子凭证服务平台 通用接口接入规范
  • 【论文笔记-NER综述】A Survey on Deep Learning for Named Entity Recognition
  • MT-BERT在文本检索任务中的实践
  • 2021-03-4:task04_NFM模型
  • 美团外卖推荐智能流量分发的实践与探索
  • Encoding History with Context-aware Representation Learning for Personalized Search(2020SIGIR)
  • 【SIGIR22】使用反事实生成器来消除知识感知推荐中的虚假联系
  • SIGIR2020|基于自注意力机制和多鉴别器的序列推荐
  • 2019_SIGIR_A Neural Influence Diffusion Model for Social Recommendation
  • SetRank(2020SIGIR)
  • 一站式SCI投稿大全(感谢pennhmp116版主的整理)
  • 风云邀请成为IT168社区Silverlight版主
  • [Android实例] [版主原创]ScrollView嵌套ScrollView
  • Web前端开发规范文档(更新于2013-01-13)

Hive中各种日期格式转换方法总结相关推荐

  1. 【Hive】常用日期格式转换和计算

    文章目录 格式转换 字符串 方法一:substr + concat 方法二: from_unixtime+ unix_timestamp 时间戳或者日期 方法一:date_format(time_va ...

  2. hive获取月份_【Hive】Hive中常用日期函数整理

    前言 使用hive进行时间处理的过程中,有时忘记一些常用的函数用法,现整理一下hive中常用日期函数,当做备忘录使用,忘记来翻阅一下. 1 时间戳转化日期函数 时间戳必须是10位,默认情况下转化为'y ...

  3. poi导入excel日期处理_POI处理Excel中各种日期格式问题

    前不久写过一篇随笔<EXCEL解析之终极方法WorkbookFactory>,提到使用WorkbookFactory来处理Excel文件数据,最近发现一个问题就是这个办法不能很好的处理各种 ...

  4. java中日期格式的转换_java中定义日期格式的转换符

    Hi,大家好久不见,今天我们在这里给大家介绍一下关于Java的小知识,在Java中定义日期格式的转换符,至于运用呢就不和大家做介绍了:接下来就给大家详细介绍一下如何实现. 那我们该如何创建使用呢?首先 ...

  5. java中转换日期_java中时间日期格式讲解和转换方法

    额,其实做项目一个无可避免的工具包就是时间日期格式的转换.因为时间久了所以自己也存了好多关于转换的方法之类的.但是有时候就会不满足需求,手写一时半会儿还写不出来(我不知道是不是我太菜了,知道某类大概有 ...

  6. hive中的日期转换函数

    1.unix时间戳转时间函数   语法: from_unixtime(bigintunixtime[, string format]) 返回值: string   说明: 转化UNIX时间戳(从197 ...

  7. 使用PHPExcel判别和格式化Excel中的日期格式

    转自:http://renzhen.iteye.com/blog/799391 最近,在做一个导入功能,在系统中使用PHPExcel类库,读取上传的Excel文件,然后进行字段映射,最后将Excel内 ...

  8. 20100921 学习记录:关于sqlserver2005与ASP中 转换日期格式

    sqlserver2005使用convert转换日期 server使用convert来取得datetime日期数据,以下实例包含各种日期格式的转换语句及查询结果:Select CONVERT(varc ...

  9. MySQL中各种日期格式转换

    日期格式的转换总结 1).unix time和日期格式互转 比如zabbix history表中的clock字段保存的是unix time,看到的是一串数字,可以使用FROM_UNIXTIME去转换 ...

最新文章

  1. java培训教程:什么是匿名内部类?怎样创建匿名内部类?
  2. PHP封装返回Ajax字符串和JSON数组
  3. Ardino基础教程 18_驱动74HC595
  4. 离散傅里叶变换python_使用python实现离散时间傅里叶变换
  5. nodejs项目的package-lock.json文件的用途
  6. [新品发布]全球首个百万IOPS云盘来了 阿里云推出超高性能云盘ESSD
  7. UVA - 512 ​​​​​​​Spreadsheet Tracking
  8. C++ 大神John Carmack的编程传说!还在抱怨C++难学吗?看大佬操作!
  9. 【OpenCV】OpenCV访问像素点的三种方式
  10. 帮中国修长城前,英特尔还用AI追踪北极熊、保护鲸鱼
  11. 完成这些事情后再做决定 、
  12. 泰安技师学院计算机专业,泰安技师学院有哪些系部和专业
  13. maven打包命令-P和-D的用法
  14. XP同步时间服务器地址
  15. 使用FlashPaper在线转换.doc为.swf
  16. 11.21的自动锁屏 ios_iPhone11 的新手小技巧
  17. 【python】——数据分布拟合工具包fitter
  18. CAMP模型——估计资本成本的模型
  19. 得之坦然,失之淡然,顺其自然,争其必然。真的太经典了啊!
  20. 数据质量问题是大数据应用的关键

热门文章

  1. 2018_Csrnet: Dilated convolutional neural networks for understanding the highly congested scenes
  2. DC / DC boost电路带闭环控制
  3. 物联网时代的工控机防病毒/主机加固需求分析
  4. 敲代码时如何快速移动光标_HTML网页代码大全
  5. 对excel的完美操作
  6. 如何快速有效玩弄乙方?
  7. 线性表的练习--学生成绩统计
  8. 【技术工坊39期】去中心化钱包和中心化钱包的开发框架和实现
  9. 招商信诺人寿2020年理赔年报启示:重疾保障仍显不足
  10. 基于Android4.0.3的各种工具信息整理(共130个)