hiveSQL常用日期函数

注意 MM,DD,MO,TU 等要大写

Hive 可以在 where 条件中使用 case when


已知日期


要求日期


语句


结果


本周任意一天


本周一


select date_sub(next_day(‘2016-11-29‘,‘MO‘),7) ;


2016-11-28


本周任意一天


上周一


select date_sub(next_day(‘2016-11-29‘,‘MO‘),14) ;


2016-11-21


本周任意一天


本周二


select date_sub(next_day(‘2016-11-29‘,‘MO‘),6)


2016-11-29


本周任意一天


上周二


select date_sub(next_day(‘2016-11-29‘,‘MO‘),13) ;


2016-11-22


本周任意一天


上周末


select date_sub(next_day(‘2016-11-29‘,‘MO‘),8) ;


2016-11-27


本月任意一天


上月末


select date_sub(trunc(‘2016-11-02‘,‘MM‘),1);


2016-10-31


本月任意一天


上月初


select trunc(add_months(‘2016-11-02‘,-1),‘MM‘)


2016-10-01


本月任意一天


本月初


select trunc(‘2016-11-02‘,‘MM‘)


2016-11-01


本月任意一天


上上月26


select date_add(add_months(trunc(‘2016-11-02‘,‘MM‘),-2),25) ;


2016-09-26


本月任意一天


上月26


select date_add(add_months(trunc(‘2016-11-02‘,‘MM‘),-1),25) ;


2016-10-26


当前时间戳


select current_timestamp() ;


2016-11-30 15:18:06.276


当前时间


select current_date() ;


2016-11-30


本季度任意一天


上季度初


case quarter(‘2016-05-23‘)

when 1 then concat(year(‘2016-05-23‘)-1,‘-10-01‘)

when 2 then concat(year(‘2016-05-23‘),‘-01-01‘)

when 3 then concat(year(‘2016-05-23‘),‘-04-01‘)

when 4 then concat(year(‘2016-05-23‘),‘-07-01‘)

end

add_months(concat(year(‘2017-02-23‘),‘-‘,substr(concat(‘0‘,quarter(‘2017-02-23‘)*3+1),-2),‘-01‘),-6)


本季度任意一天


本季度初


case quarter(‘2016-05-23‘)

when 1 then concat(year(‘2016-05-23‘),‘-01-01‘)

when 2 then concat(year(‘2016-05-23‘),‘-04-01‘)

when 3 then concat(year(‘2016-05-23‘),‘-07-01‘)

when 4 then concat(year(‘2016-05-23‘),‘-10-01‘)

end

add_months(concat(year(‘2017-02-23‘),‘-‘,substr(concat(‘0‘,quarter(‘2017-02-23‘)*3+1),-2),‘-01‘),-3)

时间: 2024-11-08 23:58:13

hiveSQL常用日期函数的相关文章

C# 常用日期函数

我想知道取的时期是几月.几日,然后做一些统计,上网找了一些方法. --DateTime 数字型 System.DateTime currentTime=new System.DateTime(); 1.1 取当前年月日时分秒 currentTime=System.DateTime.Now; 1.2 取当前年 int 年=currentTime.Year; 1.3 取当前月 int 月=currentTime.Month; 1.4 取当前日 int 日=currentTime.Day; 1.5 取

常用日期函数使用结合

static int MthDiff1(date d1, date d2){    int daysDiff = d1 - d2 - 1; if (daysDiff >= 0)        return (year(num2date(daysDiff)) - 1900)*12 + mthofyr(num2date(daysDiff));    else        return -1 * (year(num2date(-1 * daysDiff)) - 1900) * 12 + mthofy

Oracle SQL日期比较和常用日期函数

一.oracle sql日期比较 在今天之前: select * from up_date where update < to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss') select * from up_date where update <= to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss') 在今天只后: select * from up_date where updat

Oracle常用日期函数

常用的时间格式掩码如下:掩码元素       含义YYYY           四位数年份 (如:2005)     yearYY             二位数年份(如  05) Q                季度(1-4) MM             月份(01-12)      monthWW           年的星期数(1-53),其中第一星期为年的第一天至第七天 W             月的星期数(1-5),其中第一星期为月的第一天至第七天 DDD          年的

MySql常用日期函数(转载)

/*date_add(date,interval expr type)和date_sub(date,interval expr type)执行日期运算. date 是一个 datetime 或date值,用来指定起始时间. expr 是一个表达式,用来指定从起始日期添加或减去的时间间隔值. expr是一个字符串;对于负值的时间间隔,它可以以一个 ‘-’开头. type 为关键词,它指示了表达式被解释的方式. 关键词interva及 type 分类符均不区分大小写. 日期操作,adddate就是d

java 常用日期函数总结

计算某一月份的最大天数 Java代码   Calendar time=Calendar.getInstance(); //time.clear(); //time.set(Calendar.YEAR,year); //time.set(Calendar.MONTH,month-1); //注意,Calendar对象默认一月为0 int day=time.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天数 注:在使用set方法之前,必须先clear一下

常用日期函数

print GETDATE() --Jul 12 2016 8:15PM print CONVERT(DATE, GETDATE()) --2016-07-12 print CONVERT(DATETIME, CONVERT(DATE, GETDATE())) --Jul 12 2016 12:00AM print DATEADD(s, -1, CONVERT(DATETIME, CONVERT(DATE, GETDATE()))) --Jul 11 2016 11:59PM print REP

ABAP - 日期格式转换 &amp; ABAP常用日期处理函数

ABAP - 日期格式转换 现在提供以下一些日期格式转换的函数: Below are several FMs which can be used to convert date format. 1. CONVERSION_EXIT_IDATE_OUTPUT INPUT:      20080203 OUTPUT:   03FEB2008 2. CONVERT_DATE_TO_EXTERNAL INPUT:      20080203 OUTPUT:   02/03/2008    "Accord

Oracl常用e函数整理

最近学Oracle数据库,常常遇到Oracle数据库函数问题,经过默默地琢磨处理,总结了一些Oracle数据库常用函数. ------------------------------------ ---->oracle常用基本函数(附例子)<---- ------------------------------------ ------------------------ ---->常用的字符函数<---- ------------------------ --initap()单词