2013-08-16 4 views
0

Привет У меня вопрос о том, как получить дату тайм-аут из эпохи. В этом случае время эпохи хранится как строка.String epoch time to date format

SELECT from_unixtime (ts) FROM table A показывает ошибку.

Неверные аргументы 'ts': Нет соответствующего метода для класса org.apache.hadoop.hive.ql.udf.UDFFromUnixTime с (string). Возможные варианты: FUNC (интермедиат) FUNC (BIGINT, строка) FUNC (BIGINT) FUNC (целое, строка).

Может кто-нибудь, пожалуйста, помогите мне найти решение

ответ

1

Это не ясно из вашего вопроса, если у вас есть секунды, так как-эпохи хранятся в виде строк или если у вас есть отформатированная строка для даты.

Если столбец ц имеет такие вещи, как 123456789, попробуйте

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

Если это какой-то другой формат, посмотрите на https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF и выбрать среди функций даты, которые принимают строки.