Как Snowflake упрощает работу с данными, хранящимися в массивах
При работе со Snowflake SQL вы часто будете сталкиваться с данными, хранящимися в массивах. Здесь Snowflake теперь запускает новые функции, которые могут помочь инженерам по данным и ученым.
Давайте посмотрим на новые функции и на то, как они работают — первая из них — ARRAY_MAX
:
МАССИВ_МАКС
Эта функция возвращает элемент с наибольшим значением, которое не является SQL NULL для данного входного массива [1]. Использовать его довольно просто — вот небольшой пример, который вы можете использовать в качестве образца.
SELECT ARRAY_MAX([30, 0, NULL, 20, NULL]);
который выдает следующий результат:
+------------------------------------+ | ARRAY_MAX([20, 0, NULL, 10, NULL]) | |------------------------------------| | 30 | +------------------------------------+
МАССИВ_МИН
Еще одна новая функция при работе с полуструктурированными данными — ARRAY_MIN
с входным МАССИВОМ. Она возвращает элемент с наименьшим значением, отличным от SQL NULL[1]. Таким образом, он делает прямо противоположное ARRAY_MAX
— поэтому имеет смысл, что Snowflake опубликовала их вместе;) Итак, следующий запрос
SELECT ARRAY_MIN([20, 0, NULL, 10, NULL]);
будет производить:
+------------------------------------+ | ARRAY_MIN([20, 0, NULL, 10, NULL]) | |------------------------------------| | 0 | +------------------------------------+
МАССИВ_СОРТ
Хотя ARRAY_MAX
и ARRA_MIN
, возможно, более интересны при анализе данных, третья новая функция ARRAY_SORT
также может быть интересна инженерам данных. Он возвращает МАССИВ, содержащий элементы входного МАССИВА, отсортированные в порядке возрастания или убывания[1]. Функция работает со следующими параметрами:
ARRAY_SORT( <array> [ , <sort_ascending> [ …