Подтвердить что ты не робот

Как выбрать текущую дату в Hive SQL

Как получить текущую системную дату в Hive? В MySQL мы выбрали now(), может ли кто-нибудь помочь мне получить результаты запроса. Я очень новичок в Hive, есть ли подходящая документация для Hive, которая дает подробную информацию о псевдо столбцах и встроенных функциях.

4b9b3361

Ответ 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())