У нас есть столбец эпохи времени (BIGINT), хранящийся в Hive. Мы хотим получить Date 'yyyy-MM-dd' за эту эпоху. Проблема в том, что моя эпоха находится в миллисекундах, например. 1409535303522. Таким образом, выберите timestamp, from_unixtime (timestamp, 'yyyy-MM-dd') дает неправильные результаты для даты, поскольку она ожидает эпоху в секундах.
Итак, я попытался делить его на 1000. Но потом он преобразуется в Double, и мы не можем применить к нему функцию. Даже CAST не работает, когда я пытаюсь преобразовать этот double в Bigint.