最近Impala里查数据的时候,发现有很多时间函数不支持,因此,搜集整理了一批常用时间函数,以备查询。

让日期自己与自己比较大小

datediff(first_value(create_time) over(partition by create_user order by create_time),create_time)

这是利用orcale里的窗口函数,first_value ()  over(partition by     order by   )意思是先将creat_time按照create_user分组,再按create_time进行排序,然后first_value()取出第一个时间,也就是最小时间,然后与create_time进行比较,通过得到的数值比较大小。

有什么应用场景呢?

若datediff()=0,那就表示只在当天,可以用来判断是否是只在当天有数据,也就是新增数据。

增加月份

add_months(timestamp date, int months)

add_months(timestamp date, bigint months)

Return type: timestamp

usage:add_months(now(),1)

增加日期

adddate(timestamp startdate, int days),

adddate(timestamp startdate, bigint days)

Return type: timestamp

usage:adddate(now(),1)

当前时间戳

current_timestamp()和now()等价

日期相减

datediff(string enddate, string startdate)

Return type: int

usage:datediff("2018-08-05", "2018-08-03")

得到天,得到月份

day(string date)

Return type: int

usage: day("2018-08-05")

得到星期英文

dayname(string date)

Return type: string

usage:dayname("2018-08-05") Sunday

得到这一天是这周的第几天

dayofweek(string date)  1 (Sunday) to 7 (Saturday).

Return type: int

usage:dayofweek("2018-08-06")

加天数

days_add(timestamp startdate, int days)

Return type: timestamp

usage:days_add(now(),2)

减天数

days_sub(timestamp startdate, int days)

Return type: timestamp

usage:days_sub(now(), 2)

格式化日期

from_unixtime(bigint unixtime[, string format])

Return type: string

注意参数

usage:from_unixtime(1392394861,"yyyy-MM-dd");

得到小时

hour(string date)

Return type: int

usage:hour("2018-08-06 12:32:54")

增加小时

hours_add(timestamp date, int hours)

Return type: timestamp

usage:hours_add(now(),2)

减少

hours_sub(timestamp date, int hours)

Return type: timestamp

usage:hours_sub(now(),2)

得到分钟

minute(string date)

Return type: int

usage:minute(now())

增加分钟

minutes_add(timestamp date, int minutes)

Return type: timestamp

usage:minutes_add(now(),2)

减少分钟

minutes_sub(timestamp date, int minutes)

Return type: timestamp

usage:minutes_sub(now(),2)

得到月份

month(string date)

Return type: int

usage:month("2018-08-06 12:32:54")

月份相加

months_add(timestamp date, int months)

Return type: timestamp

usage:months_add(now(),3)

减月份

months_sub(timestamp date, int months)

Return type: timestamp

months_sub(now(),3)

得到秒

second(string date)

Return type: int

秒加

seconds_add(timestamp date, int seconds)

Return type: timestamp

秒减

seconds_sub(timestamp date, int seconds)

Return type: timestamp

得到日期

to_date(now())

得到1970到今秒

unix_timestamp(),

unix_timestamp(string datetime),

unix_timestamp(string datetime, string format),

unix_timestamp(timestamp datetime)

Return type: bigint

得到这周是这年的多少周

weekofyear(string date)

Return type: int

usage:weekofyear("2018-08-06 12:32:54")

周加

weeks_add(timestamp date, int weeks)

Return type: timestamp

usage:weeks_add("2018-08-06 12:32:54", 1)

周减

weeks_sub(timestamp date, int weeks)

Return type: timestamp

usage:weeks_sub("2018-08-06 12:32:54", 1)

得到年

year(string date)

Return type: int

年加

years_add(timestamp date, int years)

Return type: timestamp

年减

years_sub(timestamp date, int years)

Return type: timestamp

impala 本年格式化时间_【DataPM】Impala里的日期函数相关推荐

  1. impala 本年格式化时间_hive,hbase,impala之间的对比

    hbase在三者中更注重的是存储,它实现了类似mysql的double write机制,但是它是一种NoSQL的数据库,并且是可以支持列式存储的,算是比较大的一个内存Hash表.hbase也采用了类似 ...

  2. mysql 格式化时间_每天一个常用MySQL函数-from_unixtime等

    场景 我们在MySQL中存储数据的时候,表中通常有代表时间属性的字段,更新时间.创建时间.支付成功时间等,通常为时间戳或者标准时间格式,可能会遇到需要格式化展示的需求,可以通过程序去控制或者通过MyS ...

  3. hive中如何把13位转化为时间_重要知识点收藏 | Hive常用函数大全

    关系运算 1.等值比较: = 语法:A=B 操作类型:所有基本类型 描述: 如果表达式A与表达式B相等,则为TRUE:否则为FALSE 举例: hive>select 1 from lxw_du ...

  4. create报错不是函数_各种SQL中关于日期函数的那些事(建议收藏)

    hive.presto.spark.impala.mysql常用日期时间函数吐血整理 使用的SQL多了不知道大家有没这样的困惑,SQL的语法在大多数方面是一致的,如SELECT,JOIN,GROUP ...

  5. mysql以下日期函数正确的_[数据库]MYSQL基础03(日期函数)

    [数据库]MYSQL基础03(日期函数) 0 2015-10-29 01:00:09 工作中对日期的处理是经常遇到的,需求可能多种多样,因此重点介绍. 1.获取当前日期select NOW()-- 结 ...

  6. centos ll 格式化时间_审理文书格式化的实践探索

    案件审理室负责对涉嫌违纪或者违法.犯罪案件严格依规依纪依法审核把关,提出纪律处理或者处分的意见,做到事实清楚.证据确凿.定性准确.处理恰当.手续完备.程序合规.审理工作结束后应当将案件涉及的审理文书装 ...

  7. c oracle格式化时间,JAVA和ORACLE中的日期格式

    报表中同时用到了从JAVA中取得的日期和从ORACLE中取得的日期,日期格式必须统一. 1.JAVA中,我用SimpleDateFormat()格式化日期,语法如下: SimpleDateFormat ...

  8. python打印时间_在Python中定义Main函数(第二部分)

    Main函数的最佳实践 既然您已经了解两种执行方式上的差异,那么掌握一些最佳实践方案还是很有用的.它们将适用于编写作为脚本运行的代码或者在另一个模块导入的代码. 如下是四种实践方式: 将大部分代码放入 ...

  9. mysql起止时间怎么写_【Mysql 学习】日期函数函数

    --curdate()返回当前日期mysql> select curdate(); +------------+ | curdate()  | +------------+ | 2011-01- ...

最新文章

  1. Go 分布式学习利器(19)-- Go并发编程 之 CSP(communicating sequential processes) 机制
  2. Adobe源码泄漏?3行代码搞定,Flash动画无缝导入Android/iOS/cocos2dx(二)
  3. 关于webpack的使用
  4. Matlab调整子图位置及大小(祛白边)+调整画布大小+添加总标题
  5. different styles of button in footer area
  6. 名片大全:30款精美的企业名片设计欣赏
  7. jssdk 保存文件到手机_手机混用闪存到底是真是假?教你查手机闪存型号
  8. 解决 安装或卸载软件时报错Error 1001 的问题
  9. jsp员工管理系统mysql_基于JSP的企业员工信息管理系统的设计(MySQL)
  10. java txt中文乱码_Java读写txt文件中文乱码问题的解决
  11. poi设置excel表格边框,字体等
  12. Elasticseach api keys are not enabled
  13. 【那些年学过的计算机基础】--计算机发展史(图片版)
  14. 视频:使用FFMpeg实现视频录制与压缩
  15. ZOJ 3551 Bloodsucker(概率)
  16. 实习僧[shixiseng.com]爬虫实战笔记
  17. unity制作小地图
  18. acad.exe启动参数
  19. 数据库SQL实践25:获取员工其当前的薪水比其manager当前薪水还高的相关信息
  20. Linux Perl安装

热门文章

  1. CSDN 技术影响力之星正式揭晓 | 2022 开发者生态汇
  2. Linus Torvalds 命名 [ 冰封荒原 ] 版 Linux 内核的思考
  3. 实地集团和广州移动发布首个独立组网5G全场景智能社区
  4. 跨过虚拟化技术浪潮,Veeam快步入局云数据管理
  5. 中兴的芯片,到底什么水平?
  6. @IT老司机 6月3日,扫除技术与产品选型难题,CSDN选型智囊团来了!
  7. 400本以上电子书、1000门以上课程会员免费看,快来领取!
  8. Python 大数据分析疫情:如何实现实时数据爬取及 Matplotlib 可视化?
  9. 高效编排有状态应用——TiDB 的云原生实践与思考
  10. Java 8:一文掌握 Lambda 表达式 | CSDN 博文精选