Hive--hive语句中关于时间的一系列操作

文章目录

  • unix_timestamp()
  • from_unixtime((bigint unixtime[,string format])
  • to_date(String date)
  • year(String date),month(String date),day(String date)
  • weekofyear(String date)
  • datediff(String enddate,String begindate)
  • date_add(String date,int days)
  • date_sub(String date,int days)

unix_timestamp()

unix_timestamp():返回当前时间的时间戳

unix_timestamp(String date):返回指定日期的时间戳,但此处的日期对格式有严格要求,格式必须是yyyy-MM–dd HH:mm:ss的形式

unix_timestamp(String date,String pattern):返回指定日期格式的日期的对应时间戳
select unix_timestamp(‘2016-06-01’,’yyyy-MM-dd’) from hive_sum limit 1;

from_unixtime((bigint unixtime[,string format])

将一串数组转换成指定格式的日期
select from_unxitime(unix_timestamp(),‘yyyy-MM-dd’) from tmp1;
返回当前的日期

to_date(String date)

返回时间字段中的日期部分。要求参数是yyyy-MM-dd HH:mm:ss格式,后面的也可以没有

year(String date),month(String date),day(String date)

分别返回参数日期中的年,月,日。要求参数是yyyy-MM-dd HH:mm:ss格式,后面的也可以没有

weekofyear(String date)

返回时间字段是本年的第几周,要求参数是yyyy-MM–dd格式

datediff(String enddate,String begindate)

返回enddate和begindate之间的时间天数,要求参数是yyyy-MM-dd

date_add(String date,int days)

返回date增加days天数以后的日期

date_sub(String date,int days)

返回date减少days天数以后的日期

参考文章:
https://blog.csdn.net/bitcarmanlee/article/details/51670879

你可能感兴趣的:(Hive)