Hive中时间函数汇总

Hive中时间函数汇总

编号函数功能语法返回值类型举例备注
1from_unixtime将时间戳转换为时间格式from_unixtime(bigint unixtime[, string format])stringselect from_unixtime(1462361193,‘yyyy-MM-dd HH:mm:ss’) from test当字段time为string类型时,应该将其转换为int类型, select from_unixtime(cast(time as int),‘yyyyMMddHH’) from test
2unix_timestamp日期转UNIX时间戳unix_timestamp(string date)bigintselect unix_timestamp(’2016-05-04 19:00:00′) from test转换格式为“yyyy-MM-dd HH:mm:ss“的日期
3unix_timestamp指定格式日期转UNIX时间戳unix_timestamp(string date, string pattern)bigintselect unix_timestamp(’20160504 19:00:00′,’yyyyMMdd HH:mm:ss’) from test如果转化失败,则返回0
4unix_timestamp获取当前UNIX时间戳unix_timestamp()bigintselect unix_timestamp() from test
5to_date日期时间转日期to_date(string timestamp)stringselect to_date(’2016-05-04 19:00:00′) from test返回日期时间字段中的日期部分
6year日期转年year(string date)intselect year(‘2016-05-04 19:00:00’) from test返回日期中的年, 相应地,month、day、hour、minute、second返回月、日、时、分、秒
7datadiff日期比较求差datediff(string enddate, string startdate)intselect datediff(’2015-11-02′,’2016-05-04′) from test返回结束日期减去开始日期的天数
8date_add日期增加date_add(string startdate, int days)stringselect date_add(‘2016-05-04’, 520) from test返回开始日期startdate增加days天后的日期, data_sub类似,返回开始日期startdate减去days天后的日期
9pmod(datediff(#date#, ‘1920-01-01’) - 3, 7)获取星期几函数int#date#表示给的日期。 输出的结果为0-6的数,分别表示 日,一,二 … 六
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值