Учебники

Улей — встроенные функции

В этой главе описываются встроенные функции, доступные в Hive. Функции выглядят очень похоже на функции SQL, за исключением их использования.

Встроенные функции

Hive поддерживает следующие встроенные функции:

Тип возврата Подпись Описание
BIGINT круглый (двойной) Возвращает округленное значение BIGINT для double.
BIGINT этаж (двойной) Возвращает максимальное значение BIGINT, которое равно или меньше двойного.
BIGINT потолок (двойной) Возвращает минимальное значение BIGINT, которое равно или больше, чем double.
двойной rand (), rand (int seed) Возвращает случайное число, которое меняется от строки к строке.
строка concat (строка A, строка B, …) Возвращает строку, полученную в результате объединения B после A.
строка substr (строка A, начало int) Возвращает подстроку A, начиная с начальной позиции и до конца строки A.
строка substr (строка A, начало int, длина int) Возвращает подстроку A, начиная с начальной позиции заданной длины.
строка верхний (строка А) Возвращает строку, полученную в результате преобразования всех символов A в верхний регистр.
строка Ucase (строка A) То же, что и выше.
строка ниже (строка А) Возвращает строку, полученную в результате преобразования всех символов B в нижний регистр.
строка lcase (строка A) То же, что и выше.
строка отделка (строка A) Возвращает строку, полученную в результате обрезки пробелов с обоих концов A.
строка Итрим (строка А) Возвращает строку, полученную из пробелов в начале (слева) от A.
строка тртрим (строка А) rtrim (строка A) Возвращает строку, полученную из пробелов в конце (справа) от A.
строка regexp_replace (строка A, строка B, строка C) Он возвращает строку, полученную в результате замены всех подстрок в B, которые соответствуют синтаксису регулярного выражения Java, на C.
ИНТ размер (Map <KV>) Возвращает количество элементов в типе карты.
ИНТ Размер (Array <Т>) Возвращает количество элементов в типе массива.
значение <тип> приведение (<expr> как <тип>) Он преобразует результаты выражения expr в <тип>, например, cast (‘1’ как BIGINT) преобразует строку ‘1’ в ее интегральное представление. NULL возвращается, если преобразование не удалось.
строка from_unixtime (int unixtime) преобразовать количество секунд из эпохи Unix (1970-01-01 00:00:00 UTC) в строку, представляющую метку времени этого момента в текущем системном часовом поясе в формате «1970-01-01 00:00: 00″
строка to_date (строка времени) Возвращает часть даты строки метки времени: to_date («1970-01-01 00:00:00») = «1970-01-01»
ИНТ год (строковая дата) Возвращает часть года даты или строку метки времени: year («1970-01-01 00:00:00») = 1970, year («1970-01-01») = 1970
ИНТ месяц (строковая дата) Возвращает часть месяца даты или строку метки времени: month («1970-11-01 00:00:00») = 11, month («1970-11-01») = 11
ИНТ день (строковая дата) Возвращает дневную часть даты или строку метки времени: день («1970-11-01 00:00:00») = 1, день («1970-11-01») = 1
строка get_json_object (строка json_string, путь строки) Он извлекает объект json из строки json на основе указанного пути json и возвращает строку json извлеченного объекта json. Возвращает NULL, если входная строка json неверна.

пример

Следующие запросы демонстрируют некоторые встроенные функции:

функция round ()

hive> SELECT round(2.6) from temp;

При успешном выполнении запроса вы увидите следующий ответ:

3.0

функция пола ()

hive> SELECT floor(2.6) from temp;

При успешном выполнении запроса вы увидите следующий ответ:

2.0

функция ceil ()

hive> SELECT ceil(2.6) from temp;

При успешном выполнении запроса вы увидите следующий ответ:

3.0

Агрегатные функции

Hive поддерживает следующие встроенные агрегатные функции . Использование этих функций такое же, как и у агрегатных функций SQL.