以下hive日期函数百分百满足日常工作使用,请仔细阅读!!

【hive 日期函数 大全】Hive常用日期函数整理注意:1)  hive 没有 to_char函数  2) HIVE 日期函数只识别 年-月-日 不能识别 年-月 ,所以处理月份的时候需要特殊处理1)hive 字符创拼接:
CONCAT(string A, string B…)
SELECT CONCAT('2019','05','11');
2) 字符截取
select substr(add_months(from_unixtime((unix_timestamp('2015-09','yyyy-MM')),'yyyy-MM-dd'),-1),0,7);
SELECT SUBSTR(from_unixtime((unix_timestamp('201509','yyyyMM')),'yyyyMMdd'),0,6);
SELECT SUBSTR(from_unixtime((unix_timestamp('201509','yyyyMM')),'yyyy-MM-dd'),0,7);hive (felix)> SELECT from_unixtime(unix_timestamp(cast('201509' as string),'yyyyMM'),'yyyy-MM-dd') ;
2015-09-01
Time taken: 0.06 seconds, Fetched: 1 row(s)
hive (felix)> SELECT from_unixtime(unix_timestamp(cast('201509' as string),'yyyyMM'),'yyyy-MM') ;
2015-09select from_unixtime(unix_timestamp(add_months(from_unixtime((unix_timestamp('201509','yyyyMM')),'yyyy-MM-dd'),-1),'yyyy-MM-dd'),'YYYYMM') time_list3) 时间区间获取4) 中英文日期转换
hive (default)> select from_unixtime((unix_timestamp('201509','yyyyMM')),'MMM-YY');
OK
Sep-15
Time taken: 0.06 seconds, Fetched: 1 row(s)hive (default)> SELECT from_unixtime(unix_timestamp('Sep-19','MMM-YY'),'yyyyMM');
OK
201812
---英文日期大写
hive (default)> select upper(from_unixtime((unix_timestamp('201509','yyyyMM')),'MMM-YY'));
OK
SEP-15
Time taken: 0.062 seconds, Fetched: 1 row(s)1.unix_timestamp()
返回当前时区的unix时间戳
返回类型:bigint
hive (default)> SELECT UNIX_TIMESTAMP();2.from_unixtime(bigint unixtime[,string format])
时间戳转日期函数
返回类型:string
hive (default)> select from_unixtime(unix_timestamp(),'yyyyMMdd') ;
201606143.unix_timestamp(string date)
返回指定日期格式的的时间戳
返回类型:bigint
注意:如果后面只有date参数,date的形式必须为'yyyy-MM-dd HH:mm:ss'的形式。
hive (default)> select unix_timestamp('2020-05-01');
NULL
hive (default)> select unix_timestamp('2020-05-01 00:00:00');
14647104004.unix_timestamp(string date,string pattern)
返回指定日期格式的时间戳
返回类型:bigint
hive (default)> select unix_timestamp('2020-05-01','yyyy-MM-dd');
14493312005.to_date(string date)
返回时间字段中的日期部分 必须是yyyy-MM-dd格式
返回类型:string说明: 返回日期时间字段中的日期部分。只能识别到 “年-月-日” 级别的时间,无法识别 “年-月” 级别的时间。
--1) 注意 使用年月,to_date 日期是识别不了的
hive (default)> select to_date('2016-09');  --有问题,结果为null
OK
NULL
Time taken: 0.067 seconds, Fetched: 1 row(s)hive (default)> select add_months('2020-05-01',-1);
OK
2020-04-01hive (default)> select to_date('2020-05-01 00:00:00') ;
2020-05-01hive (default)> select to_date('2020-05-01');
2020-05-016.year(string date)
返回时间字段中的年
返回类型:int
hive (default)> select year('2020-05-01 00:00:00') ;
2016
hive (default)> select year('2020-05-01') ;
20167.month(string date)
返回时间字段中的月
返回类型:int
hive (default)> select month('2020-05-01') ;
6
hive (default)> select month('2020-05-01');
68.day(string date)
返回时间字段中的天
返回类型:int
hive (default)> select day('2020-05-01') ;
19、day:返回日期中的天select day('2015-04-13 11:32:12');
输出:1310、hour:返回日期中的小时select hour('2015-04-13 11:32:12');
输出:1111、minute:返回日期中的分钟select minute('2015-04-13 11:32:12');
输出:3212、second:返回日期中的秒select second('2015-04-13 11:32:56');
输出:5613.weekofyear(string date)
返回时间字段是本年的第多少周
返回类型:int
hive (default)> select weekofyear('2020-05-01') ;
2214.datediff(string enddate,string begindate)
返回enddate与begindate之间的时间差的天数
返回类型:int
hive (default)> select datediff('2020-05-01','2016-05-01') ;
31
--DEMO 2
hive (default)> SELECT datediff('2020-05-01 00:00:00','2016-05-01 23:00:00');
OK
3115.date_add(string date,int days)
返回date增加days天后的日期
返回类型:string
hive (default)> select date_add('2020-05-01',15) ;
2020-05-1616.date_sub(string date,int days)
返回date减少days天后的日期
返回类型:string
hive (default)> select date_sub('2020-05-01',15) ;
2016-05-1717:Hive中取最近30天数据
datediff(CURRENT_TIMESTAMP ,gmt_create)<=30 18、Hive中 两个日期相差多少小时
select (unix_timestamp('2018-05-25 12:03:55') - unix_timestamp('2018-05-25 11:03:55'))/3600
输出:1
19、Hive中 两个日期相差多少分钟
select (unix_timestamp('2018-05-25 12:03:55') - unix_timestamp('2018-05-25 11:03:55'))/60
输出:6020、hive 计算某一个日期属于星期几,如2018-05-20 是星期日
SELECT IF(pmod(datediff('2018-05-20', '1920-01-01') - 3, 7)='0', 7, pmod(datediff('2018-05-20', '1920-01-01') - 3, 7))
输出:721、hive返回上个月第一天和最后一天
--上个月第一天
select trunc(add_months('2020-05-08',-1),'MM');  --只能识别 年-月-日
select trunc(add_months(CURRENT_TIMESTAMP,-1),'MM')hive (default)> select trunc(add_months('2020-05',-1),'MM');
OK
NULL
Time taken: 0.067 seconds, Fetched: 1 row(s)
hive (default)> select trunc(add_months('2020-05-08',-1),'MM');
OK
2020-04-01
Time taken: 0.079 seconds, Fetched: 1 row(s)
hive (default)> select concat(substr(add_months(from_unixtime(unix_timestamp(),'yyyy-MM-dd'),-1),1,7),'-01'); --上个月最后一天
select date_sub(trunc(CURRENT_TIMESTAMP,'MM'),1);--返回上个月日期
select substr(add_months(from_unixtime((unix_timestamp('2015-09','yyyy-MM')),'yyyy-MM-dd'),-1),0,7);SELECT substr(from_unixtime(unix_timestamp('2020-05','yyyy-MM'),'yyyyMM'),0,4);

hive日期函数使用大全相关推荐

  1. 【hive 日期函数 大全】Hive常用日期函数整理 史上最全

    [hive 日期函数 大全]Hive常用日期函数整理注意:1) hive 没有 to_char函数 2) HIVE 日期函数只识别 年-月-日 不能识别 年-月 ,所以处理月份的时候需要特殊处理1)h ...

  2. 【hive 日期函数】Hive常用日期函数整理

    1.to_date:日期时间转日期函数 select to_date('2015-04-02 13:34:12'); 输出:2015-04-02 1 2 2.from_unixtime:转化unix时 ...

  3. hive日期函数总结

    Hive 日期函数 Hive Date Functions 官网地址:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+U ...

  4. Hive日期函数使用

    Hive日期函数使用 year month day hour minute second add_months date_add date_sub date_format datediff dayof ...

  5. Hive的日期函数使用大全

    目录 1. date_format 格式化日期 2. date_add, date_sub 日期的加减 3. current_date 获取当前日期 4. current_timestamp 获取当前 ...

  6. HIVE日期函数大全

    转自大神 http://www.oratea.net/?p=944 无论做什么数据,都离不开日期函数的使用. 这里转载一下Hive的日期函数的使用,写的相当完整. 日期函数UNIX时间戳转日期函数: ...

  7. hive 日期函数_数据分析面试必备——SQL窗口函数你会了吗?

    之前写过一篇sql的文章,面向基础的sql操作(无眠:数据分析面试必备--SQL你准备好了吗?),目前已经有12000+收藏(收藏是点赞的5倍,你们可真狠心哪),也可以看出众多同学对sql学习的热情. ...

  8. hive日期函数转化

    1.to_date:日期时间转日期函数 select to_date('2015-04-02 13:34:12'); 输出:2015-04-02 1 2 2.from_unixtime:转化unix时 ...

  9. [转载]Hive日期函数

    转自大神 http://www.oratea.net/?p=944 无论做什么数据,都离不开日期函数的使用. 这里转载一下Hive的日期函数的使用,写的相当完整. 日期函数UNIX时间戳转日期函数: ...

最新文章

  1. 干掉耐克的,绝不会是下一个耐克?
  2. ant使用指南详细入门教程
  3. 不定方程(质数与因数)
  4. filter过滤器_JavaWeb之 Filter(过滤器)
  5. ECShop如何设置默认的配送方式和支付方式
  6. 什么是GaussDB
  7. 使用WiX制作具有时间限制的安装包
  8. pdo mysql_num_rows_PHP-mysql_num_rows()期望参数1为资源,给定布尔...
  9. for循环中包含跨服务查询优化
  10. eviews建立时间序列模型_Eviews教程 Eviews进行时间序列分析教程
  11. vmware Please make sure that the kernel module `vmmon? is loaded
  12. 个人数据泄露问题的数据_非个人的个人数据
  13. win10注册表WOW6432Node
  14. 攻防演练场景中的加密流量检测技术
  15. 使用Python代码下载网易音乐歌曲
  16. Vue h5 调用微信扫码接口
  17. 解释什么叫老公?什么叫老婆?
  18. 安徽农业大学计算机信息管理专业,刘连忠 - 安徽农业大学 - 信息与计算机学院...
  19. zoj 2675 Little Mammoth 圆与四边形的公共面积
  20. 定点爆破丨千锋老朱最全Springcloud-alibaba课程强势来袭

热门文章

  1. 【推荐系统->相似度】Cos相似度与皮尔逊相似度及其关联
  2. 《画壁》——人人都有一场无悔的爱恋
  3. 天创速盈:店铺怎么推广?这些你都懂了吗?
  4. DEBUG STACK TRACE for PoolBackedDataSource.close() 异常
  5. day06 Debug基础练习
  6. 硅谷产品教父Marty Cagan 谈产品经理领导力 | 全球产品经理大会
  7. 微信小程序Smartconfig配网实现
  8. LEFT JOIN RIGHT JOIN INNER JOIN的区别
  9. 机械臂速成小指南(十八):圆弧规划
  10. 大白话讲解小波变换由来