Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Если вы знакомы с SQL и хотите узнать KQL, префиксируйте запросы SQL в KQL, префиксируя SQL-запрос с помощью строки комментариев и --ключевого слова explain. В выходных данных показана версия запроса KQL, которая поможет вам понять синтаксис KQL и основные понятия.
--
explain
SELECT COUNT_BIG(*) as C FROM StormEvents
Выходные данные
| Query |
|---|
StormEvents<br>| суммирование C=count()<br>| проект C |
Памятка по преобразованию из SQL в Kusto
В следующей таблице показаны примеры запросов в SQL и их эквивалентах KQL.
| Категория | Запросы SQL | Запрос Kusto | Подробнее |
|---|---|---|---|
| Выбор данных из таблицы | SELECT * FROM dependencies |
dependencies |
Операторы табличных выражений |
| -- | SELECT name, resultCode FROM dependencies |
dependencies | project name, resultCode |
project |
| -- | SELECT TOP 100 * FROM dependencies |
dependencies | take 100 |
take |
| Оценка Null | SELECT * FROM dependenciesWHERE resultCode IS NOT NULL |
dependencies | where isnotnull(resultCode) |
isnotnull() |
| Операторы сравнения (дата) | SELECT * FROM dependenciesWHERE timestamp > getdate()-1 |
dependencies | where timestamp > ago(1d) |
ago() |
| -- | SELECT * FROM dependenciesWHERE timestamp BETWEEN ... AND ... |
dependencies | where timestamp between (datetime(2016-10-01) .. datetime(2016-11-01)) |
between |
| Операторы сравнения (строка) | SELECT * FROM dependenciesWHERE type = "Azure blob" |
dependencies | where type == "Azure blob" |
Логические операторы |
| -- | -- substringSELECT * FROM dependenciesWHERE type like "%blob%" |
// substringdependencies | where type has "blob" |
Имеет |
| -- | -- wildcardSELECT * FROM dependenciesWHERE type like "Azure%" |
// wildcarddependencies | where type startswith "Azure"// ordependencies | where type matches regex "^Azure.*" |
startswithсовпадения регулярных выражений |
| Сравнение (логические значения) | SELECT * FROM dependenciesWHERE !(success) |
dependencies | where success == False |
Логические операторы |
| Группирование, агрегирование | SELECT name, AVG(duration) FROM dependenciesGROUP BY name |
dependencies | summarize avg(duration) by name |
суммирование avg() |
| Distinct | SELECT DISTINCT name, type FROM dependencies |
dependencies | distinct name, type |
суммирование отдельных данных |
| -- | SELECT name, COUNT(DISTINCT type) FROM dependencies GROUP BY name |
dependencies| summarize by name, type | summarize count() by name// or approximate for large sets dependencies| summarize dcount(type) by name |
count() dcount() |
| Псевдонимы столбцов, расширение | SELECT operationName as Name, AVG(duration) as AvgD FROM dependenciesGROUP BY name |
dependencies | summarize AvgD = avg(duration) by Name=operationName |
Оператор Псевдонима |
| -- | SELECT conference, CONCAT(sessionid, ' ' , session_title) AS session FROM ConferenceSessions |
ConferenceSessions | extend session=strcat(sessionid, " ", session_title) | project conference, session |
strcat() project |
| Заказ | SELECT name, timestamp FROM dependenciesORDER BY timestamp ASC |
dependencies | project name, timestamp | sort by timestamp asc nulls last |
sort |
| Основные n значений по мере | SELECT TOP 100 name, COUNT(*) as Count FROM dependenciesGROUP BY nameORDER BY Count DESC |
dependencies | summarize Count = count() by name | top 100 by Count desc |
top |
| Объединение | SELECT * FROM dependenciesUNIONSELECT * FROM exceptions |
union dependencies, exceptions |
union |
| -- | SELECT * FROM dependenciesWHERE timestamp > ...UNIONSELECT * FROM exceptionsWHERE timestamp > ... |
dependencies | where timestamp > ago(1d) | union (exceptions | where timestamp > ago(1d)) |
|
| Присоединиться | SELECT * FROM dependencies LEFT OUTER JOIN exceptionsON dependencies.operation_Id = exceptions.operation_Id |
dependencies | join kind = leftouter (exceptions)on $left.operation_Id == $right.operation_Id |
join |
| Вложенные запросы | SELECT * FROM dependenciesWHERE resultCode == (SELECT TOP 1 resultCode FROM dependenciesWHERE resultId = 7ORDER BY timestamp DESC) |
dependencies | where resultCode == toscalar( dependencies | where resultId == 7 | top 1 by timestamp desc | project resultCode) |
toscalar |
| Having | SELECT COUNT(\*) FROM dependenciesGROUP BY nameHAVING COUNT(\*) > 3 |
dependencies | summarize Count = count() by name | where Count > 3 |
сводка по месту |
Связанный контент
- Запрос данных с помощью T-SQL