impala常用日期格式转换 (单独测试可去除末尾的 from tableName)
一、获取当前日期
//获取当前日期
select from_unixtime(unix_timestamp(),'yyyy-MM-dd') from tableName;
二、日期格式化
//格式化日期
select from_unixtime(unix_timestamp('2021-11-12 11:12:11'),'yyyy-MM-dd') from tableName;
select from_unixtime(unix_timestamp(t1.column),'yyyy-MM-dd') from tableName t1;
三、获取半年前的时间
//获取半年前的时间
select add_months(from_unixtime(unis_timestamp(),'yyyy-MM-dd'),-6) from tableName;
四、当前时间减去30天
//当前时间减去30天
select from_unixtime(unix_timestamp()-60*60*24*30) from tableName
五、常用日期函数汇总
//增加月份
add_months(timestamp date, int months)
add_months(timestamp date, bigint months)
Return type: timestamp
usage:add_months(now(),1)
//增加日期
adddate(timestamp startdate, int days),
adddate(timestamp startdate, bigint days)
Return type: timestamp
usage:adddate(now(),1)
//当前时间戳
current_timestamp()和now()等价
//日期相减
datediff(string enddate, string startdate)
Return type:int
usage:datediff('2021-11-21', '2021-11-01')
//得到天,得到月份
day(string date)
Return type: int
usage: day('2021-11-21')
//得到星期英文
dayname(string date)
Return type: string
usage:dayname('2021-11-21') Sunday
//得到这一天是这周的第几天
dayofweek(string date) 1 (Sunday) to 7 (Saturday).
Return type: int
usage:dayofweek('2021-11-21')
//加天数
days_add(timestamp startdate, int days)
Return type: timestamp
usage:days_add(now(),2)
//减天数
days_sub(timestamp startdate, int days)
Return type: timestamp
usage:days_sub(now(), 2)
//格式化日期
from_unixtime(bigint unixtime,[string format])
Return type: string
//注意参数
usage:from_unixtime(1392394861,'yyyy-MM-dd');
//得到小时
hour(string date)
Return type: int
usage:hour('2021-11-21 12:32:54')
//增加小时
hours_add(timestamp date, int hours)
Return type: timestamp
usage:hours_add(now(),2)
//减少
hours_sub(timestamp date, int hours)
Return type: timestamp
usage:hours_sub(now(),2)
//得到分钟
minute(string date)
Return type: int
usage:minute(now())
//增加分钟
minutes_add(timestamp date, int minutes)
Return type: timestamp
usage:minutes_add(now(),2)
//减少分钟
minutes_sub(timestamp date, int minutes)
Return type: timestamp
usage:minutes_sub(now(),2)
//得到月份
month(string date)
Return type: int
usage:month('2021-11-21 12:32:54')
//月份相加
months_add(timestamp date, int months)
Return type: timestamp
usage:months_add(now(),3)
//减月份
months_sub(timestamp date, int months)
Return type: timestamp
months_sub(now(),3)
//得到秒
second(string date)
Return type: int
//秒加
seconds_add(timestamp date, int seconds)
Return type: timestamp
//秒减
seconds_sub(timestamp date, int seconds)
Return type: timestamp
//得到日期
to_date(now())
//得到1970到今秒
unix_timestamp(),
unix_timestamp(string datetime),
unix_timestamp(string datetime, string format),
unix_timestamp(timestamp datetime)
Return type: bigint
//得到这周是这年的多少周
weekofyear(string date)
Return type: int
usage:weekofyear('2021-11-21 12:32:54')
//周加
weeks_add(timestamp date, int weeks)
Return type: timestamp
usage:weeks_add('2021-11-21 12:32:54', 1)
//周减
weeks_sub(timestamp date, int weeks)
Return type: timestamp
usage:weeks_sub('2021-11-21 12:32:54', 1)
//得到年
year(string date)
Return type: int
//年加
years_add(timestamp date, int years)
Return type: timestamp
//年减
years_sub(timestamp date, int years)
Return type: timestamp
————————————————
版权声明:本文为CSDN博主「程序员小挽」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_39403933/article/details/121282230