Упражнение. Различные типы запросов KQL
Теперь давайте рассмотрим, что вы узнали о структуре и использовании различных типов инструкций запросов и напишите некоторые запросы.
Запрос с инструкциями табличного выражения
Операторы табличных выражений являются фундаментальными в KQL, так как позволяют фильтровать табличные данные и управлять ими, чтобы возвращать нужные результаты.
Рассмотрим пример. Выберите соответствующую вкладку для вашей среды.
Azure Data Explorer предлагает кластер справки с различными типами предварительно загруженных данных. Доступ к этому кластеру можно получить с помощью веб-интерфейса Azure Data Explorer.
Ниже показано, как создать запрос, применяя операторы к начальном табличному набору данных. Каждый запрос состоит из инструкций табличных выражений, некоторые из которых содержат операторы. Операторы принимают табличные входные данные, выполняют операцию и создают новые табличные выходные данные.
Начните с табличного набора данных.
StormEvents
Выходные данные: полный табличный набор данных из
StormEvents
таблицы.Примените фильтр с помощью
where
оператора для выбора определенных событий, таких как события наводнения . Операторwhere
фильтрует табличный набор данных и сохраняет табличную структуру.StormEvents | where State == "FLORIDA"
Выходные данные: табличный набор
StormEvents
записей в штате ФЛОРИДА.Используйте другой оператор для дальнейшего управления табличными выходными данными.
StormEvents | where State == "FLORIDA" | sort by InjuriesDirect desc
Выходные данные: табличный набор
StormEvents
записей во ФЛОРИДе , отсортированный по убыванию по столбцуInjuriesDirect
.
Введение переменной с инструкцией let
Пусть операторы позволяют определять переменные в запросах KQL, что делает их более читаемыми и модульными.
Рассмотрим пример. Выберите соответствующую вкладку для вашей среды.
В следующем запросе state
и injuryThreshold
являются переменными, которые могут быть назначены значения в соответствии с конкретными требованиями. Эти переменные затем используются в запросе для фильтрации StormEvents
таблицы на основе определенных критериев.
let state = "TEXAS";
let injuryThreshold = 10;
StormEvents
| where State == state and InjuriesDirect + InjuriesIndirect > injuryThreshold