上周末做了一封自动邮件,把格式化时间HH写成hh。出现了意想不到的结果,以为是数据问题,其实是自己的问题

我们来看看上周遇到的问题:

12小时内的HH格式化:
spark-sql> select >   from_unixtime(dateline,'HH') as hh,>   count(1)> from > (select '1631727073' as dateline> union all> select '1631737873' as dateline> union all> select '1631739733' as dateline> union all> select '1631754132' as dateline> union all > select '1631764932' as dateline> ) t1> group by from_unixtime(dateline,'HH')> order by from_unixtime(dateline,'HH');
01      1
04      1
05      1
09      1
12      1
Time taken: 2.671 seconds, Fetched 5 row(s)
12小时内的hh格式化:
spark-sql> select >   from_unixtime(dateline,'hh') as hh,>   count(1)> from > (select '1631727073' as dateline> union all> select '1631737873' as dateline> union all> select '1631739733' as dateline> union all> select '1631754132' as dateline> union all > select '1631764932' as dateline> ) t1> group by from_unixtime(dateline,'hh')> order by from_unixtime(dateline,'hh');
01      1
04      1
05      1
09      1
12      1
Time taken: 2.671 seconds, Fetched 5 row(s)

从上面结果可以看出对于12小时之内,HH和hh是一样的。
不要简单的就以为两者没有区别,不分大小写,那你就大错特错了。

我们再来看看超过12小时会出现什么问题:

超过12小时的HH格式化:
spark-sql> select >   from_unixtime(dateline,'HH') as hh,>   count(1)> from > (select '1631727073' as dateline> union all> select '1631739733' as dateline> union all> select '1631754132' as dateline> union all > select '1631764932' as dateline> union all> select '1631768532' as dateline> ) t1> group by from_unixtime(dateline,'HH')> order by from_unixtime(dateline,'HH');
01      1
05      1
09      1
12      1
13      1
Time taken: 1.272 seconds, Fetched 5 row(s)
超过12小时的hh格式化:
spark-sql> select >   from_unixtime(dateline,'hh') as hh,>   count(1)> from > (select '1631727073' as dateline> union all> select '1631739733' as dateline> union all> select '1631754132' as dateline> union all > select '1631764932' as dateline> union all> select '1631768532' as dateline> ) t1> group by from_unixtime(dateline,'hh')> order by from_unixtime(dateline,'hh');
01      2
05      1
09      1
12      1
Time taken: 4.15 seconds, Fetched 4 row(s)

到这,应该都明白了,HH是24小时制,而hh是12小时制的。对于12小时以内的统计,HH和hh都可以用,对于12小时以外的统计,得要注意一下了。

hive时间戳格式化HH和hh的区别相关推荐

  1. JAVA和SQL中时间的格式化 (yyyy-MM-dd HH:mm:ss转换规则)知识总结

    年(Year).月(Month).日(Day).时(Hour).分(Minute).秒(Second) 分别为时间基本单位.在Java和Oracle中的时间格式化转换语法中分别用其首字母代表对应的单位 ...

  2. 将时间戳格式化为yyyy-MM-dd hh:mm:ss格式(Vue) Moment

    推荐方法: 文档 | Moment.js 中文网(可支持其他时间格式转换,英文,法文等.) //下载安装包 npm install moment -D//main.js引入包 import momen ...

  3. 【JS】JavaScript时间与时间戳相互转换 | 时间yyyy-MM-dd HH:mm:ss转为时间戳,时间戳转换为时间yyyy-MM-dd HH:mm:ss

    时间与时间戳相互转换 1.2 时间 (JS常用时间类型) 1.2.1 GMT-格林尼治标准时 1.2.2 UTC- 协调世界时 1.2.3 中国标准时间 1.2.4 ISO8601标准时间格式 1.2 ...

  4. 简单示例立马搞懂Java日期格式中yyyy-MM-dd HH:mm:ss和YYYY-MM-dd hh:mm:ss的区别

    word is weak,show me your code 啥也不说,上代码 /*** 测试两种不同的格式化*/public static void dateFormateTest() {Strin ...

  5. 时间戳转换成YY-MM-DD HH:MM:SS格式

    时间戳转换成YY-MM-DD HH:MM:SS格式 formatDate (timeStamp) {// console.log('时间戳',timeStamp)timeStamp=`${timeSt ...

  6. JAVA中日期 yyyy-MM-dd HH:mm:ss和yyyy-MM-dd hh:mm:ss的区别

    其实就是一个很小的知识点,但是本人在开发中,踩到了坑. 把两个格式弄混了.程序中需要按日期查询,用到了hh的,结果总是少12个小时的数据.弄了半天,刚开始还以为是时区弄错了呢,后来才发现原来是hh和H ...

  7. js 格式化日期yyyy-MM-dd hh:mm:ss

    js 格式化日期yyyy-MM-dd hh:mm:ss function formatDate(objDate,fmt) { var o = {"M+" : objDate.get ...

  8. 【vue】使用自定义指令实现时间戳格式化

    时间戳的显示需求 在开发中,大多数情况下从服务器请求获取到的都是时间戳. 我们需要将时间戳转换成具体格式化的时间来展示. 在Vue2中可以通过过滤器(filter)来完成: 在Vue3中可以通过 计算 ...

  9. postgresql 时间戳格式化

    平时总记不住pg里面怎么将时间戳格式化,记录常用的格式化时间 -- 年 select to_char(to_timestamp(1608018517000 / 1000),'yyyy'); -- 年- ...

最新文章

  1. 送书 | 深入浅出,一起学习贝叶斯!
  2. Linux进程突然挂死,当主进程突然死亡时,我该如何杀死linux spawnProcess?
  3. 关于git的使用记录总结
  4. ABP VNext从单体切换到微服务
  5. 评测通知 | 2022年全国知识图谱与语义计算大会评测任务发布
  6. 激动人心!柳叶刀杂志执行主编回柳叶刀烧烤吃烧烤了!
  7. CVPR 2019 | 旷视提出超分辨率新方法Meta-SR:单一模型实现任意缩放因子
  8. servlet-cookie实现向客户端写cookie信息
  9. ubuntu 12.04 ubuntu System program problem detected 解决方法
  10. Xcode 工程文件打开不出来, cannot be opened because the project file cannot be parsed.
  11. 树莓派——实时时钟模块(RTC)
  12. 怎么做网站推广-网站推广100种方法
  13. 什么是互联网营销?看一篇这就够了
  14. 团队协作方法之:高效使用任务故事墙
  15. 谷歌drive收费_Google Drive的系统设计分析
  16. css首行缩进字符间距行高_黑暗代码风格的学院:换行,间距和缩进
  17. 2022安全员-C证试题模拟考试平台操作
  18. 3、Origin安装教程
  19. thinkpad装linux无线网卡驱动,ThinkPad E530 Fedora 20 下无线网卡驱动的安装
  20. 基于JAVA的购物网站(毕业论文)

热门文章

  1. 力扣打卡(16):回溯算法:心静下来刷题。静心方可成事
  2. CAD怎么连接线段?CAD线段连接教程
  3. 破解加密狗之维达软件清单计价2008
  4. chm文件打不开,双击弹出乱码框,解决方法。
  5. 岛屿的个数java_LeetCode 200:岛屿数量 Number of Islands
  6. 2020年浙江大学软件学院预推免面经
  7. Thinkpad T60
  8. 解决springmvc返回json数据IE出现文件下载和json数据中文乱码问题
  9. nyoj_74 小学生算术
  10. 最新版 Office 三国杀,体验式寻找最强电子表格