from_unixtime
返回值类型是一个timestamp
from_unixtime(unixtime) → timestamp
Returns the UNIX timestamp unixtime as a timestamp.
from_unixtime(unixtime, string) → timestamp with time zone
Returns the UNIX timestamp unixtime as a timestamp with time zone using string for the time zone.
from_unixtime(unixtime, hours, minutes) → timestamp with time zone
Returns the UNIX timestamp unixtime as a timestamp with time zone using hours and minutes for the time zone offset.
案例
这里是毫秒,所以
> select from_unixtime(1609167953694/1000);
_col0
-------------------------
2020-12-28 23:05:53.000
此外,这个和hive的from_unixtime
还是有点区别
format_datetime
format_datetime(timestamp, format) → varchar
Formats timestamp as a string using format.
案例
> select format_datetime(from_unixtime(1609167953694/1000),'yyyy-MM-dd');
_col0
------------
2020-12-28
> select format_datetime(from_unixtime(1609167953694/1000),'yyyy-MM-dd HH:mm:ss');
_col0
---------------------
2020-12-28 23:05:53
只保留时间相关
> select format_datetime(from_unixtime(1609167953694/1000),'HH:mm:ss');
_col0
----------
23:05:53
总结
from_unixtime
可以获取一个timestamp
format_datetime
可以获取一个string
类型的时间