Hive Unix 时间戳
Hive Unix Timestamp
我没有从 hiveUNIX_TIMESTAMP 中得到预期的结果
例如:
select FROM_UNIXTIME(UNIX_TIMESTAMP('2015/02/01', 'YYYY/MM/DD')) from table limit 1;
输出:
2014-12-28 00:00:00
Time taken: 0.287 seconds, Fetched: 1 row(s)
我原以为是 return 2015-02-01 ,但结果却有所不同。我明白这可能是因为纪元时间?
select FROM_UNIXTIME(UNIX_TIMESTAMP('2015/02/01'))
使用此查询获取答案 2015-02-01 00:00:00
谢谢。
您也可以使用 substr() 函数。在任何地方都很好用,除非你需要将它与其他时间进行比较 variable/constant。
您的日期格式全部大写。尝试使用小写字母:
select from_unixtime(unix_timestamp('12/02/01','yyyy/MM/dd') from table;
结果:
2015-02-01 00:00:00
您也可以使用以下方式去除时间:
to_date(from_unixtime(unix_timestamp('12/02/01','yyyy/MM/dd'))
结果:
2015-02-01
我没有从 hiveUNIX_TIMESTAMP 中得到预期的结果
例如:
select FROM_UNIXTIME(UNIX_TIMESTAMP('2015/02/01', 'YYYY/MM/DD')) from table limit 1;
输出:
2014-12-28 00:00:00
Time taken: 0.287 seconds, Fetched: 1 row(s)
我原以为是 return 2015-02-01 ,但结果却有所不同。我明白这可能是因为纪元时间?
select FROM_UNIXTIME(UNIX_TIMESTAMP('2015/02/01'))
使用此查询获取答案 2015-02-01 00:00:00
谢谢。
您也可以使用 substr() 函数。在任何地方都很好用,除非你需要将它与其他时间进行比较 variable/constant。
您的日期格式全部大写。尝试使用小写字母:
select from_unixtime(unix_timestamp('12/02/01','yyyy/MM/dd') from table;
结果: 2015-02-01 00:00:00
您也可以使用以下方式去除时间:
to_date(from_unixtime(unix_timestamp('12/02/01','yyyy/MM/dd'))
结果: 2015-02-01