Поделиться через


Функции массива в сопоставлении потоков данных

ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics

Совет

Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !

Потоки данных доступны как в конвейерах Фабрики данных Azure, так и в конвейерах Azure Synapse Analytics. Эта статья относится к потокам данных для сопоставления. Если вы не знакомы с преобразованиями, ознакомьтесь с вводной статьей "Преобразование данных с помощью потоков данных сопоставления".

В этой статье содержатся сведения о функциях массивов, поддерживаемых фабрикой данных Azure и Azure Synapse Analytics в потоках сопоставления данных.

Список функций массива

Функции массива выполняют преобразование структур данных, которые являются массивами. Специальные ключевые слова обращаются к элементам массива и индексам:

  • #acc представляет значение, которое необходимо включить в один выход при уменьшении массива.
  • #index представляет текущий индекс массива, а также номера индексов массива #index2, #index3 ....
  • #item представляет текущее значение элемента в массиве.
Функция массива Задача
array. Создает массив элементов. Все элементы должны быть одного типа. Если элементы не указаны, по умолчанию используется пустой массив строк. То же, что и оператор создания [].
at Находит элемент в индексе массива. Индекс начинается с 1. Внеграничный индекс приводит к значению NULL. Находит значение в карте при указании ключа. Если ключ не найден, он возвращает значение NULL.
содержит Возвращает значение true, если какой-либо элемент в указанном массиве оценивается как true в предоставленном предикате. Функция contains ожидает ссылку на один элемент в функции предиката как #item.
distinct Возвращает отдельный набор элементов из массива.
except Возвращает набор отличий одного массива от другого, удаляя дубликаты.
filter Фильтрует элементы массива, которые не соответствуют предоставленному предикату. Функция filter ожидает ссылку на один элемент в функции предиката как #item.
find Находит первый элемент из массива, соответствующего условию. Она принимает функцию filter , в которой можно обращаться к элементу в массиве как #item. Для глубоко вложенных карт можно ссылаться на родительские карты с помощью нотации #item_n(#item_1, #item_2...) .
flatten Сплющивает массив или массивы в один массив. Массивы атомарных элементов возвращаются без изменений. Последний аргумент является необязательным и по умолчанию равен false для рекурсивного выравнивания, когда появление вложенности превышает один уровень.
в папке Проверяет, находится ли элемент в массиве.
пересекать Возвращает набор пересечений отдельных элементов из двух массивов.
карта Сопоставляет каждый элемент массива с новым элементом с помощью предоставленного выражения. Функция map ожидает ссылку на один элемент в функции выражения как #item.
mapIf Условно сопоставляет массив с другим массивом той же или меньшей длины. Значения могут иметь любой тип данных, в том числе structTypes. Он принимает функцию сопоставления, где можно адресировать элемент в массиве как #item и текущий индекс как #index. Для глубоко вложенных карт можно ссылаться на родительские карты с помощью нотации #item_[n](#item_1, #index_1...) .
mapIndex Сопоставляет каждый элемент массива с новым элементом с помощью предоставленного выражения. Функция map ожидает ссылку на один элемент в функции выражения как #item и ссылку на индекс элемента как #index.
mapLoop Перебирает числа от 1 до length, создавая массив этой длины. Он принимает функцию сопоставления, где можно адресировать индекс в массиве как #index. Для глубоко вложенных карт можно ссылаться на родительские карты с помощью нотации #index_n(#index_1, #index_2...) .
уменьшить Накапливает элементы в массиве. Функция reduce ожидает ссылку на накопительный элемент и один элемент в первой функции выражения как #acc и #item. Ожидается, что #result результирующее значение будет использоваться во второй функции выражения.
size Находит размер массива или типа карты.
ломтик Извлекает подмножество массива из позиции. Позиция отсчитывается от единицы. Если длина опущена, она по умолчанию используется в конце строки.
сортировать Сортирует массив с помощью предоставленной функции предиката. Функция sort ожидает ссылку на два последовательных элемента в функции выражения как #item1 и #item2.
раскрыть Разворачивает массив в набор строк и повторяет значения для оставшихся столбцов в каждой строке
союз Возвращает объединенное множество уникальных элементов из двух массивов.

Другие доступные функции