ITPub博客

首页 > 数据库 > 数据库开发技术 > hive如何把时分秒时间变成15分钟切片时间

hive如何把时分秒时间变成15分钟切片时间

数据库开发技术 作者:whisperrr 时间:2021-08-19 16:53:33 0 删除 编辑

  1、关键函数解释:

  左补足函数:lpad

  语法: lpad(string str, int len, string pad)

  返回值: string

  说明:将str进行用pad进行左补足到len位

  hive> select lpad('u', 8, 'i love ');

  i love u

  右补足函数:rpad

  语法: rpad(string str, int len, string pad)

  返回值: string

  说明:将str进行用pad进行右补足到len位

  hive> select rpad('i', 8, ' love u');

  i love u 大连无痛人流哪家好  http://mobile.120wtrlyy.com/

  向下取整函数: floor

  语法: floor(double a)

  返回值: BIGINT

  说明: 返回等于或者小于该double变量的最大的整数

  hive> select floor(3.1415926);

  3

  hive> select floor(25);

  25

  2、思路解析

  需求:把2021-07-31 09:07:01 这个时间转换成 202107310900

  或 把2021-07-31 09:17:01 这个时间转换成 202107310915

  分别利用hour和minute函数得到对应时间的小时和分钟,再利用以上三个函数进行各种字符串转换。

  hive> select concat('20210731',lpad(hour('2021-07-31 09:07:01'),2,'0'),rpad(15*floor(minute('2021-07-31 09:07:01')/15),2,'0'));

  202107310900

  hive> select concat('20210731',lpad(hour('2021-07-31 09:17:01'),2,'0'),rpad(15*floor(minute('2021-07-31 09:17:01')/15),2,'0'));

  202107310915


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70005147/viewspace-2787836/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2021-08-11

  • 博文量
    24
  • 访问量
    13090