Поиск в фабрике данных Azure и для каждого

У меня есть конвейер фабрики данных, в котором я хочу перебирать строки операции поиска SQL. Я сузил запрос до трех столбцов и 500 строк.

Я понимаю, что для ссылки на значение в таблице я использую:

@{activity('lookupActivity').output.value[row#].colname}

Однако для каждого нужно что-то перебирать. Мое первое предположение - установить некоторую переменную массива в строки возвращенного запроса sql. Итак, что мне установить для этой переменной?

@{activity('lookupActivity').output.value?

Наконец, похоже, что почти все данные представлены в формате json в ADF, это правда? И как мне просмотреть результат этого поиска как json, чтобы я мог понять, как должен выглядеть мой динамический контент?


person Robert Riley    schedule 28.05.2020    source источник


Ответы (2)


Вы правы, что все (почти) JSON. (Исключение: Фабрика данных Azure v2: конвейер выполнения действий вывод

Таким образом, вы можете поместить свой @activity('lookupActivity').output.value, который представляет собой массив, в действие foreach на вкладке настроек, например

введите здесь описание изображения

Затем внутри цикла foreach вы указываете текущее значение одного из столбцов как @item().colname.

person Jason Welch    schedule 29.05.2020
comment
Что, если необходимо передать его через веб-активность json как foo: [bar]. Вы бы порекомендовали foo: @array (activity ('lookup'). Output.value)? - person Robert Riley; 04.06.2020
comment
Я не тестировал, но думаю, будет "foo": @string(activity('lookup').output.value) - person Jason Welch; 06.06.2020

Вы можете использовать выходное значение для каждого действия и проходить по одному. Вы можете делать последовательные или параллельные операции в зависимости от ваших потребностей.

person Nathan    schedule 28.05.2020