嗨,我有一个关于如何从纪元时间中获取日期时间的问题。在这种情况下,纪元时间存储为字符串。
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)。
有人可以帮我找到解决方案吗
嗨,我有一个关于如何从纪元时间中获取日期时间的问题。在这种情况下,纪元时间存储为字符串。
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)。
有人可以帮我找到解决方案吗
从您的问题中不清楚您是否将 seconds-since-epoch 存储为字符串,或者您是否有日期的格式化字符串。
如果您的 ts 列有 123456789 之类的内容,请尝试
SELECT from_unixtime(cast(ts as bigint)) FROM table A...
如果是其他格式,请查看https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF并在接受字符串的日期函数中进行选择。