Как получить параметр раскрывающегося списка с включенным "Все" в предложении where для работы?
Я использую Application Insight Workbook для создания графиков по журналам IIS. Я хочу добавить параметр, в котором пользователи могут фильтровать на компьютере. Это все хорошо и работает. Это раскрывающееся меню позволяет выбрать несколько вариантов и выглядит так:
Я хочу установить флажок "Все", поэтому я делаю это здесь.
Я использую такой специальный параметр в своем запросе
W3CIISLog | where Computer in ({Computer})
Как я могу изменить свой запрос, чтобы он поддерживал как множественный выбор, так и "Все" из раскрывающегося списка? Возможно ли вообще этого достичь?
1 ответ
У нас есть специальная документация на github с примерами того, как все. (похоже, что эта информация еще не попала в общедоступные лазурные документы)
скопировано оттуда:
один из способов - использовать
[]
в качестве значения "все", а затем напишите свой запрос следующим образом:let selection = dynamic([{Selection}]); SomeQuery | where array_length(selection) == 0 or SomeField in (selection)
это будет обрабатывать пустой выбор ИЛИ выбор "все" одинаково (обрабатывается проверкой array_length) И будет искать выбранные значения в SomeField, когда выбрано что-либо еще
В других распространенных случаях в качестве значения специального маркера используется символ "*", когда требуется параметр, а затем выполняется проверка с помощью
| where "*" in ({Selection}) or SomeField in ({Selection})
(вы также можете использовать has_any
вместо того in
(или in~
для нечувствительности к регистру in
) в зависимости от способа запроса и ваших данных и т. д.