Подключаемый модуль pivot

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

T | evaluate pivot(PivotColumn)

Примечание

Выходная схема pivot подключаемого модуля основана на данных и, следовательно, запрос может создать другую схему для любого из двух запусков. Это также означает, что запрос, ссылающийся на распакованные столбцы, в любое время может стать "неразрывным". По этой причине не рекомендуется использовать этот подключаемый модуль для заданий службы автоматизации.

Синтаксис

T | evaluate pivot(T | evaluate pivot([, [, ] [,] [,[,[, ...]])

Аргументы

  • пивотколумн: столбец для поворота. каждое уникальное значение из этого столбца будет столбцом в выходной таблице.
  • статистическая функция: (необязательно) объединяет несколько строк во входной таблице в одну строку в выходной таблице. Поддерживаемые в настоящее время функции: min() , max() , take_any() , sum() , dcount() , avg() , stdev() , variance() , make_list() , make_bag() , make_set() , count() (по умолчанию — count() ).
  • Столбец1, Столбец2,... (необязательно) имена столбцов. Выходная таблица будет содержать дополнительный столбец для каждого указанного столбца. по умолчанию: все столбцы, кроме сведенного столбца и столбца агрегирования.

Возвращаемое значение

Функция Pivot возвращает повернутую таблицу с указанными столбцами (Столбец1, Столбец2,...) и все уникальные значения столбцов сведения. Каждая ячейка для сведенных столбцов будет содержать вычисление агрегатной функции.

Примеры

Сведение по столбцу

Для каждого объекта EventType и состояний, начинающихся с "AL", подсчитайте количество событий этого типа в этом состоянии.

StormEvents
| project State, EventType 
| where State startswith "AL" 
| where EventType has "Wind" 
| evaluate pivot(State)
EventType АЛАБАМА Аляска
Шквалистый ветер 352 1
Очень сильный ветер 0 95
Экстремальный холодный/ветер подогрева 0 10
Строгая обмотка 22 0

Сведение по столбцу с статистической функцией

Для каждого объекта EventType и состояний, начинающихся с "AR", отображается общее число прямых смерти.

StormEvents 
| where State startswith "AR" 
| project State, EventType, DeathsDirect 
| where DeathsDirect > 0
| evaluate pivot(State, sum(DeathsDirect))
EventType КАК АРКАНЗАС так ПОЯС
Сильный ливень 1 0
Шквалистый ветер 1 0
Lightning 0 1
Внезапное наводнение 0 6
Строгая обмотка 1 0
Температуры 3 0

Сведение по столбцу с статистической функцией и одним дополнительным столбцом

Результат идентичен предыдущему примеру.

StormEvents 
| where State startswith "AR" 
| project State, EventType, DeathsDirect 
| where DeathsDirect > 0
| evaluate pivot(State, sum(DeathsDirect), EventType)
EventType КАК АРКАНЗАС так ПОЯС
Сильный ливень 1 0
Шквалистый ветер 1 0
Lightning 0 1
Внезапное наводнение 0 6
Строгая обмотка 1 0
Температуры 3 0

Укажите сводный столбец, статистическую функцию и несколько дополнительных столбцов

Для каждого типа события, источника и состояния Вычислите количество прямых смерти.

StormEvents 
| where State startswith "AR" 
| where DeathsDirect > 0
| evaluate pivot(State, sum(DeathsDirect), EventType, Source)
EventType Источник КАК АРКАНЗАС так ПОЯС
Сильный ливень Специалист по управлению в чрезвычайных ситуациях 1 0
Шквалистый ветер Специалист по управлению в чрезвычайных ситуациях 1 0
Lightning Газета 0 1
Внезапное наводнение Подготовленный корректировщик 0 2
Внезапное наводнение Вещание мультимедиа 0 3
Внезапное наводнение Газета 0 1
Строгая обмотка Правоприменение 1 0
Температуры Газета 3 0