Skip to content

Commit bd1ffcb

Browse files
Merge pull request #53358 from spelluru/firstkqlquery
Reinstating "Write your first KQL query" training
2 parents 95e2f02 + 909af7b commit bd1ffcb

39 files changed

Lines changed: 663 additions & 65 deletions

.openpublishing.redirection.json

Lines changed: 0 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -49419,66 +49419,6 @@
4941949419
"redirect_url": "/training/modules/manage-security-controls-identity-access/51-summary",
4942049420
"redirect_document_id": false
4942149421
},
49422-
{
49423-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/index.md",
49424-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49425-
"redirect_document_id": false
49426-
},
49427-
{
49428-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/1-introduction.md",
49429-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49430-
"redirect_document_id": false
49431-
},
49432-
{
49433-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/2-understand-basic-structure-kusto-query-language.md",
49434-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49435-
"redirect_document_id": false
49436-
},
49437-
{
49438-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/3-exercise-connect-to-resources.md",
49439-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49440-
"redirect_document_id": false
49441-
},
49442-
{
49443-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/4-exercise-return-number-rows-take-operator.md",
49444-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49445-
"redirect_document_id": false
49446-
},
49447-
{
49448-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/5-exercise-select-columns-project-operator.md",
49449-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49450-
"redirect_document_id": false
49451-
},
49452-
{
49453-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/6-exercise-filter-data-where-operator.md",
49454-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49455-
"redirect_document_id": false
49456-
},
49457-
{
49458-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/7-exercise-reorder-returned-data-sort-operator.md",
49459-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49460-
"redirect_document_id": false
49461-
},
49462-
{
49463-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/8-challenge.md",
49464-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49465-
"redirect_document_id": false
49466-
},
49467-
{
49468-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/9-solution.md",
49469-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49470-
"redirect_document_id": false
49471-
},
49472-
{
49473-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/10-knowledge-check.md",
49474-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49475-
"redirect_document_id": false
49476-
},
49477-
{
49478-
"source_path": "learn-pr/azure/write-first-query-kusto-query-language/11-summary.md",
49479-
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",
49480-
"redirect_document_id": false
49481-
},
4948249422
{
4948349423
"source_path": "learn-pr/azure/multi-table-queries-with-kusto-query-language/index.md",
4948449424
"redirect_url": "/training/paths/analyze-monitoring-data-with-kql/",

learn-pr/achievements.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,6 @@ achievements:
8585
title: Write multi-table queries by using Kusto Query Language
8686
summary: Write advanced queries in Kusto Query Language and gain deeper insights by combining data from several tables. Learn how to use the table-level operators `lookup`, `join`, `union`, and `materialize`, and the new aggregation functions `arg_min` and `arg_max`. Also, learn how to communicate these results visually in charts.
8787
iconUrl: /training/achievements/multi-table-queries-with-kusto-query-language.svg
88-
- uid: learn.write-first-query-kusto-query-language.badge
89-
type: badge
90-
title: Write your first query with Kusto Query Language
91-
summary: Learn how to write simple queries in Kusto Query Language (KQL) by using the operators take, project, count, where, and sort.
92-
iconUrl: /training/achievements/write-first-query-kusto-query-language.svg
9388
- uid: learn.send-crop-weather-alerts.badge
9489
type: badge
9590
title: Use Twilio and Azure Maps to receive text message weather alerts
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.write-first-query-kusto-query-language.introduction
3+
title: Introduction
4+
metadata:
5+
unitType: introduction
6+
title: Introduction
7+
description: Introduction.
8+
ms.date: 02/09/2026
9+
author: uribarash
10+
ms.author: urib
11+
ms.topic: unit
12+
durationInMinutes: 2
13+
content: |
14+
[!include[](includes/1-introduction.md)]
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.write-first-query-kusto-query-language.knowledge-check
3+
title: Module assessment
4+
metadata:
5+
unitType: knowledge_check
6+
title: Module assessment
7+
description: Review what you've learned.
8+
ms.date: 02/09/2026
9+
author: uribarash
10+
ms.author: urib
11+
ms.topic: unit
12+
durationInMinutes: 5
13+
content: |
14+
quiz:
15+
questions:
16+
- content: "What is the input and output data format of each operator in a Kusto query?"
17+
choices:
18+
- content: "String"
19+
isCorrect: false
20+
explanation: "False. String is just one of many data types that can be included in the tabular data."
21+
- content: "Tabular"
22+
isCorrect: true
23+
explanation: 'True. Each operator starts with a tabular input and returns a tabular output.'
24+
- content: "JSON"
25+
isCorrect: false
26+
explanation: "False. JSON is just one of many data types that the tabular data can include."
27+
- content: "Which operator will return a specific number of arbitrary rows of data?"
28+
choices:
29+
- content: "`take`"
30+
isCorrect: true
31+
explanation: "True. The `take` operator returns up to the specified number of arbitrary data rows."
32+
- content: "`between`"
33+
isCorrect: false
34+
explanation: "False. The `between` operator filters a record set for data that matches the values in an inclusive range."
35+
- content: "`contain`"
36+
isCorrect: false
37+
explanation: "False. The `contain` operator filters a record set for data that contains a case-insensitive string."
38+
- content: "Which operator can be used to insert new computed columns?"
39+
choices:
40+
- content: "`print`"
41+
isCorrect: false
42+
explanation: "False. The `print` operator outputs a single row with one or more scalar expressions."
43+
- content: "`render`"
44+
isCorrect: false
45+
explanation: "False. The `render` operator instructs the user agent to render the results of the query in a particular way."
46+
- content: "`project`"
47+
isCorrect: true
48+
explanation: "True. The `project` operator can be used to include, rename, or insert new computed columns."
49+
- content: "Which of the following queries best answers the following question: Which types of storms caused the most property damage in the state of Texas?"
50+
choices:
51+
- content: StormEvents | where DamageProperty > 0 | where State == "TEXAS" | project State, EventType, DamageProperty | sort by DamageProperty
52+
isCorrect: true
53+
explanation: "True."
54+
- content: StormEvents | where DamageCrops > 0 | where State == "TEXAS" | project State, EventType, DamageCrops | sort by DamageCrops
55+
isCorrect: false
56+
explanation: "False. This query sorts on `DamageCrops`, not `DamageProperty`."
57+
- content: StormEvents | where DamageProperty > 0 | where State == "FLORIDA" | where EventType contains "thunder" | project StartTime, EventType, DamageProperty
58+
isCorrect: false
59+
explanation: "False. This query looks at thunder-containing events in the state of Florida."
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.write-first-query-kusto-query-language.summary
3+
title: Summary
4+
metadata:
5+
unitType: summary
6+
title: Summary
7+
description: Summary.
8+
ms.date: 02/09/2026
9+
author: uribarash
10+
ms.author: urib
11+
ms.topic: unit
12+
durationInMinutes: 1
13+
content: |
14+
[!include[](includes/11-summary.md)]
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.write-first-query-kusto-query-language.understand-basic-structure-kusto-query-language
3+
title: Understand the basic structure of a Kusto query
4+
metadata:
5+
unitType: learning-content
6+
title: Understand the basic structure of a query
7+
description: Understand the basic structure of a query.
8+
ms.date: 02/09/2026
9+
author: uribarash
10+
ms.author: urib
11+
ms.topic: unit
12+
durationInMinutes: 3
13+
content: |
14+
[!include[](includes/2-understand-basic-structure-kusto-query-language.md)]
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.write-first-query-kusto-query-language.exercise-connect-to-resources
3+
title: Exercise - Connect to resources
4+
metadata:
5+
unitType: exercise
6+
title: Exercise - Connect to resources
7+
description: "Exercise - Connect to resources."
8+
ms.date: 02/09/2026
9+
author: uribarash
10+
ms.author: urib
11+
ms.topic: unit
12+
durationInMinutes: 3
13+
content: |
14+
[!include[](includes/3-exercise-connect-to-resources.md)]
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.write-first-query-kusto-query-language.exercise-return-number-rows-take-operator
3+
title: Exercise - Return a specific number of rows by using the take operator
4+
metadata:
5+
unitType: exercise
6+
title: Exercise - Return a specific number of rows by using the take operator
7+
description: Exercise - Return a specific number of rows by using the take operator.
8+
ms.date: 02/09/2026
9+
author: uribarash
10+
ms.author: urib
11+
ms.topic: unit
12+
durationInMinutes: 5
13+
content: |
14+
[!include[](includes/4-exercise-return-number-rows-take-operator.md)]
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.write-first-query-kusto-query-language.exercise-select-columns-project-operator
3+
title: Exercise - Select columns to return by using the project operator
4+
metadata:
5+
unitType: exercise
6+
title: Exercise - Select columns to return by using the project operator
7+
description: Exercise - Select columns to return by using the project operator.
8+
ms.date: 02/09/2026
9+
author: uribarash
10+
ms.author: urib
11+
ms.topic: unit
12+
durationInMinutes: 4
13+
content: |
14+
[!include[](includes/5-exercise-select-columns-project-operator.md)]
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.write-first-query-kusto-query-language.exercise-filter-data-where-operator
3+
title: Exercise - Filter data by using the where operator
4+
metadata:
5+
unitType: exercise
6+
title: Exercise - Filter data by using the where operator
7+
description: Exercise - Filter data by using the where operator.
8+
ms.date: 02/09/2026
9+
author: uribarash
10+
ms.author: urib
11+
ms.topic: unit
12+
durationInMinutes: 7
13+
content: |
14+
[!include[](includes/6-exercise-filter-data-where-operator.md)]

0 commit comments

Comments
 (0)