Return Type |
Name(Signature) |
Description |
---|---|---|
string |
from_unixtime(bigint unixtime[, string format]) |
将时间的秒值转换成format格式(format可为“yyyy-MM-dd hh:mm:ss”,“yyyy-MM-dd hh”,“yyyy-MM-dd hh:mm”等等) 如from_unixtime(1250111000,"yyyy-MM-dd") 得到2009-03-12 |
bigint |
unix_timestamp() |
获取本地时区下的时间戳 |
bigint |
unix_timestamp(string date) |
将格式为yyyy-MM-dd HH:mm:ss的时间字符串转换成时间戳 如unix_timestamp('2009-03-20 11:30:01') = 1237573801 |
bigint |
unix_timestamp(string date, string pattern) |
将指定时间字符串格式字符串转换成Unix时间戳,如果格式不对返回0 如:unix_timestamp('2009-03-20', 'yyyy-MM-dd') = 1237532400 |
string |
to_date(string timestamp) |
返回时间字符串的日期部分 |
int |
year(string date) |
返回时间字符串的年份部分 |
int | quarter(date/timestamp/string) | 返回当前时间属性哪个季度。 如quarter('2015-04-08') = 2 |
int |
month(string date) |
返回时间字符串的月份部分 |
int |
day(string date) dayofmonth(date) |
返回时间字符串的天 |
int |
hour(string date) |
返回时间字符串的小时 |
int |
minute(string date) |
返回时间字符串的分钟 |
int |
second(string date) |
返回时间字符串的秒 |
int |
weekofyear(string date) |
返回时间字符串位于一年中的第几个周内 如weekofyear("1970-11-01 00:00:00") = 44, weekofyear("1970-11-01") = 44 |
int |
datediff(string enddate, string startdate) |
计算开始时间startdate到结束时间enddate相差的天数 |
string |
date_add(string startdate, int days) |
从开始时间startdate加上days |
string |
date_sub(string startdate, int days) |
从开始时间startdate减去days |
timestamp |
from_utc_timestamp(timestamp, string timezone) |
如果给定的时间戳并非UTC,则将其转化成指定的时区下时间戳 |
timestamp |
to_utc_timestamp(timestamp, string timezone) |
如果给定的时间戳指定的时区下时间戳,则将其转化成UTC下的时间戳 |
date | current_date | 返回当前时间日期 |
timestamp | current_timestamp | 返回当前时间戳 |
string | add_months(string start_date, int num_months) | 返回当前时间下再增加num_months个月的日期 |
string | last_day(string date) | 返回这个月的最后一天的日期,忽略时分秒部分(HH:mm:ss) |
string | next_day(string start_date, string day_of_week) | 返回当前时间的下一个星期X所对应的日期 如:next_day('2015-01-14', 'TU') = 2015-01-20 以2015-01-14为开始时间,其下一个星期二所对应的日期为2015-01-20 |
string | trunc(string date, string format) | 返回时间的最开始年份或月份 如trunc("2016-06-26",“MM”)=2016-06-01 trunc("2016-06-26",“YY”)=2016-01-01 注意所支持的格式为MONTH/MON/MM, YEAR/YYYY/YY |
double | months_between(date1, date2) | 返回date1与date2之间相差的月份,如date1>date2,则返回正,如果date1<date2,则返回负,否则返回0.0 如:months_between('1997-02-28 10:30:00', '1996-10-30') = 3.94959677 1997-02-28 10:30:00与1996-10-30相差3.94959677个月 |
string | date_format(date/timestamp/string ts, string fmt) | 按指定格式返回时间date 如:date_format("2016-06-22","MM-dd")=06-22 |
Hive(三)-内置函数-日期函数
猜你喜欢
转载自www.cnblogs.com/sunziying/p/9068829.html
今日推荐
周排行