Hive中各种日期格式转换方法总结
背景
日期计算平时在业务取数时经常涉及到,但是数据库中经常存放着不同的日期格式,有的存放是时间戳、有的是字符串等,这时需要对其进行转换才能提取到准确的数据,这里介绍的均是hive里面的函数功能,以下内容均是业务的数据需求经常使用的部分
时间戳
unix时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒,一般为10位的整数
一个在线工具:https://tool.lu/timestamp/
![](/assets/blank.gif)
字符串日期
如:'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中各种日期格式转换方法总结相关推荐
- 【Hive】常用日期格式转换和计算
文章目录 格式转换 字符串 方法一:substr + concat 方法二: from_unixtime+ unix_timestamp 时间戳或者日期 方法一:date_format(time_va ...
- hive获取月份_【Hive】Hive中常用日期函数整理
前言 使用hive进行时间处理的过程中,有时忘记一些常用的函数用法,现整理一下hive中常用日期函数,当做备忘录使用,忘记来翻阅一下. 1 时间戳转化日期函数 时间戳必须是10位,默认情况下转化为'y ...
- poi导入excel日期处理_POI处理Excel中各种日期格式问题
前不久写过一篇随笔<EXCEL解析之终极方法WorkbookFactory>,提到使用WorkbookFactory来处理Excel文件数据,最近发现一个问题就是这个办法不能很好的处理各种 ...
- java中日期格式的转换_java中定义日期格式的转换符
Hi,大家好久不见,今天我们在这里给大家介绍一下关于Java的小知识,在Java中定义日期格式的转换符,至于运用呢就不和大家做介绍了:接下来就给大家详细介绍一下如何实现. 那我们该如何创建使用呢?首先 ...
- java中转换日期_java中时间日期格式讲解和转换方法
额,其实做项目一个无可避免的工具包就是时间日期格式的转换.因为时间久了所以自己也存了好多关于转换的方法之类的.但是有时候就会不满足需求,手写一时半会儿还写不出来(我不知道是不是我太菜了,知道某类大概有 ...
- hive中的日期转换函数
1.unix时间戳转时间函数 语法: from_unixtime(bigintunixtime[, string format]) 返回值: string 说明: 转化UNIX时间戳(从197 ...
- 使用PHPExcel判别和格式化Excel中的日期格式
转自:http://renzhen.iteye.com/blog/799391 最近,在做一个导入功能,在系统中使用PHPExcel类库,读取上传的Excel文件,然后进行字段映射,最后将Excel内 ...
- 20100921 学习记录:关于sqlserver2005与ASP中 转换日期格式
sqlserver2005使用convert转换日期 server使用convert来取得datetime日期数据,以下实例包含各种日期格式的转换语句及查询结果:Select CONVERT(varc ...
- MySQL中各种日期格式转换
日期格式的转换总结 1).unix time和日期格式互转 比如zabbix history表中的clock字段保存的是unix time,看到的是一串数字,可以使用FROM_UNIXTIME去转换 ...
最新文章
- java培训教程:什么是匿名内部类?怎样创建匿名内部类?
- PHP封装返回Ajax字符串和JSON数组
- Ardino基础教程 18_驱动74HC595
- 离散傅里叶变换python_使用python实现离散时间傅里叶变换
- nodejs项目的package-lock.json文件的用途
- [新品发布]全球首个百万IOPS云盘来了 阿里云推出超高性能云盘ESSD
- UVA - 512 ​​​​​​​Spreadsheet Tracking
- C++ 大神John Carmack的编程传说!还在抱怨C++难学吗?看大佬操作!
- 【OpenCV】OpenCV访问像素点的三种方式
- 帮中国修长城前,英特尔还用AI追踪北极熊、保护鲸鱼
- 完成这些事情后再做决定 、
- 泰安技师学院计算机专业,泰安技师学院有哪些系部和专业
- maven打包命令-P和-D的用法
- XP同步时间服务器地址
- 使用FlashPaper在线转换.doc为.swf
- 11.21的自动锁屏 ios_iPhone11 的新手小技巧
- 【python】——数据分布拟合工具包fitter
- CAMP模型——估计资本成本的模型
- 得之坦然,失之淡然,顺其自然,争其必然。真的太经典了啊!
- 数据质量问题是大数据应用的关键
热门文章
- 2018_Csrnet: Dilated convolutional neural networks for understanding the highly congested scenes
- DC / DC boost电路带闭环控制
- 物联网时代的工控机防病毒/主机加固需求分析
- 敲代码时如何快速移动光标_HTML网页代码大全
- 对excel的完美操作
- 如何快速有效玩弄乙方?
- 线性表的练习--学生成绩统计
- 【技术工坊39期】去中心化钱包和中心化钱包的开发框架和实现
- 招商信诺人寿2020年理赔年报启示:重疾保障仍显不足
- 基于Android4.0.3的各种工具信息整理(共130个)