Как получить текущую системную дату в Hive? В MySQL мы выбрали now(), может ли кто-нибудь помочь мне получить результаты запроса. Я очень новичок в Hive, есть ли подходящая документация для Hive, которая дает подробную информацию о псевдо столбцах и встроенных функциях.
Как выбрать текущую дату в Hive SQL
Ответ 1
В соответствии с LanguageManual вы можете использовать unix_timestamp()
, чтобы получить "текущую отметку времени, используя часовой пояс по умолчанию". Если вам нужно преобразовать это в нечто более понятное для человека, вы можете использовать from_unixtime(unix_timestamp())
.
Надеюсь, что это поможет.
Ответ 2
Да... Я использую Hue 3.7.0 - пользовательский интерфейс Hadoop и получаю текущую информацию о дате/времени, которую мы можем использовать ниже в Hive:
SELECT from_unixtime(unix_timestamp()); --/Selecting Current Time stamp/
SELECT CURRENT_DATE; --/Selecting Current Date/
SELECT CURRENT_TIMESTAMP; --/Selecting Current Time stamp/
Однако в Impala вы обнаружите, что только ниже команда работает для получения сведений о дате/времени:
SELECT from_unixtime(unix_timestamp()); --/Selecting Current Timestamp /
Надеюсь, что он разрешит ваш запрос:)
Ответ 3
Функции current_date
и current_timestamp
теперь доступны в Hive 1.2.0 и выше, что делает код намного чище.
Ответ 4
Получить только текущую дату, исключая отметку времени:
в более низких версиях, выглядит как куст CURRENT_DATE недоступен, поэтому вы можете использовать (он работал у меня на Hive 0.14)
select TO_DATE(FROM_UNIXTIME(UNIX_TIMESTAMP()));
В более высоких версиях говорят куст 2.0, вы можете использовать:
select CURRENT_DATE;
Ответ 5
select from_unixtime(unix_timestamp(current_date, 'yyyyMMdd'),'yyyy-MM-dd');
current_date - текущая дата
yyyyMMdd
- формат текущей даты в системе;
yyyy-MM-dd
- если вы хотите изменить формат на diff.
Ответ 6
Чтобы извлечь год с текущей даты
SELECT YEAR(CURRENT_DATE())
IBM Netezza
extract(year from now())
HIVE
SELECT YEAR(CURRENT_DATE())