当前位置: 首页 > news >正文

hadoop自动获取时间

1、自动获取前15分钟

substr(from_unixtime(unix_timestamp(concat(substr('20240107100000',1,4),'-',substr('20240107100000',5,2),'-',substr('20240107100000',7,2),' ',substr('20240107100000',9,2),':',substr('20240107100000',11,2),':','00'))-15*60,'yyyyMMddHHmmss'),1)    

在这里插入图片描述
unix_timestamp:是将字符串的时间20240107100000转换成时间类型。
from_unixtime:将时间格式化
substr:转成字符串
最后15*60,将减去对应的秒数,作用是在当前时刻减去15分钟。利用这个逻辑可以减去其他时间,如一个小时,可以减去60*60。

2、获取当前时间

使用CURRENT_TIMESTAMP()

select CURRENT_TIMESTAMP();
±------------------------------+
| current_timestamp() |
±------------------------------+
| 2024-01-09 11:18:15.646162000 |
±------------------------------+

使用now()

select now();
±------------------------------+
| now() |
±------------------------------+
| 2024-01-09 11:18:28.925986000 |
±------------------------------+

这两个函数的作用是一致的,获取到的结果是时间戳。

另外可以在建表的时候,直接指定时间 datecreated timestamp NULL DEFAULT CURRENT_TIMESTAMP
但是不能将CURRENT_TIMESTAMP设置为1列以上。

要想只获取日期,不获取时间戳,用


to_date(now())

select to_date(now());
±---------------+
| to_date(now()) |
±---------------+
| 2024-01-09 |
±---------------+

其他不常用的时间:

-- 获取年份
select year(now())
-- 输出:2022-- 获取季度
select quarter(now())
-- 输出:4-- 获取月份
select month(now())
-- 输出:10-- 获取月份英文名
select monthname(now())
-- 输出:October-- 获取日期中的日
select day(now())
-- 输出:11-- 获取小时
select HOUR(now())
-- 输出:14-- 获取当天为每周第N天,周日为第一天
select DAYOFWEEK(now()) 
-- 输出:3-- 获取明天(日期加减)
select date_add(now(),interval 1 days) 
-- 输出:2022-10-12 14:39:26.916

3、impala自动获取两天前,并输出string格式的时间

使用substr( regexp_replace(cast(date_sub(now(),2) as string),'-',''),1,8)

date_sub(now(),2) 取到前两天
cast() 转换成string
regexp_replace() 将时间戳中的‘-’去掉
最后取到日期的前2天。
在这里插入图片描述
4、impala自动获取两天后,并输出string格式的时间
将上述 date_sub() 替换成date_add()。
select substr( regexp_replace(cast(date_add(now(),2) as string),'-',''),1,8);

在这里插入图片描述

5、impala获取本月有多少天

使用 select 32-dayofmonth(date_add(now(),+32-dayofmonth(now())))

在这里插入图片描述

相关文章:

  • 通过 Elastic Stack 充分利用电信领域生成式 AI 的力量
  • 年轻人2023消费图鉴,媒介盒子为你揭秘
  • 网安入门12-文件上传(黑白名单,00截断)
  • AArch64 Exception Model学习
  • kaggle如何将自己的结果存储到本地
  • Electron快速上手
  • FS【1】:SSP
  • TypeScript基础知识:类型断言
  • nginx 负载均衡
  • SWM341系列之SWM34SRET6介绍
  • 2023年全国职业院校技能大赛(高职组)“云计算应用”赛项赛卷⑤
  • springboot项目创建及采用本地tomcat打包发布
  • 点击按钮唤起微信
  • 【牛客网】BC68 X形图案
  • Linux截图方法推荐
  • 2017届校招提前批面试回顾
  • Android Studio:GIT提交项目到远程仓库
  • AngularJS指令开发(1)——参数详解
  • create-react-app项目添加less配置
  • crontab执行失败的多种原因
  • eclipse(luna)创建web工程
  • IDEA 插件开发入门教程
  • JavaScript学习总结——原型
  • Python连接Oracle
  • redis学习笔记(三):列表、集合、有序集合
  • SQLServer之索引简介
  • ubuntu 下nginx安装 并支持https协议
  • windows下使用nginx调试简介
  • Yii源码解读-服务定位器(Service Locator)
  • 从0到1:PostCSS 插件开发最佳实践
  • 从tcpdump抓包看TCP/IP协议
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 来,膜拜下android roadmap,强大的执行力
  • 前端性能优化--懒加载和预加载
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (附源码)springboot教学评价 毕业设计 641310
  • (机器学习-深度学习快速入门)第一章第一节:Python环境和数据分析
  • (新)网络工程师考点串讲与真题详解
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • *p++,*(p++),*++p,(*p)++区别?
  • *p=a是把a的值赋给p,p=a是把a的地址赋给p。
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .Net转Java自学之路—SpringMVC框架篇六(异常处理)
  • @Transactional 详解
  • [ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解
  • [.NET 即时通信SignalR] 认识SignalR (一)
  • [BZOJ 1040] 骑士
  • [BZOJ4566][HAOI2016]找相同字符(SAM)
  • [C# 开发技巧]实现属于自己的截图工具
  • [C#]C#学习笔记-CIL和动态程序集
  • [C++提高编程](三):STL初识