0

嗨,我有一个关于如何从纪元时间中获取日期时间的问题。在这种情况下,纪元时间存储为字符串。

SELECT from_unixtime(ts) FROM table A 它显示错误。

错误的参数“ts”:类 org.apache.hadoop.hive.ql.udf.UDFFromUnixTime 与(字符串)没有匹配的方法。可能的选择:FUNC (int) FUNC (bigint, string) FUNC (bigint) FUNC (int, string)。

有人可以帮我找到解决方案吗

4

1 回答 1

1

从您的问题中不清楚您是否将 seconds-since-epoch 存储为字符串,或者您是否有日期的格式化字符串。

如果您的 ts 列有 123456789 之类的内容,请尝试

SELECT from_unixtime(cast(ts as bigint)) FROM table A...

如果是其他格式,请查看https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF并在接受字符串的日期函数中进行选择。

于 2013-08-18T04:41:29.273 回答