Praxis-Artikel · Überblick
- Warum du Joins brauchst
- Der Join-Operator
- Grundsyntax
- So sieht die KQL-Abfrage aus
- Schritt-für-Schritt-Erklärung
ca. 3 Min. Lesezeit
Warum du Joins brauchst
In der Praxis brauchst du oft Daten, die in verschiedenen Kategorien gespeichert sind. Zum Beispiel:
- Du möchtest Hardwaredetails (aus der Kategorie Hardware) zusammen mit dem Compliance-Status (aus der Kategorie Compliance) anzeigen.
- Oder du möchtest alle über Autopilot registrierten Geräte auflisten und ihren TPM-Status (aus der Kategorie Tpm) überprüfen.
- Oder du musst ein Performance-Problem analysieren und willst dafür die OS-Version mit allgemeinen Geräteinfos aus Device kombinieren.
Dafür brauchen wir einen sogenannten Join, um mehrere Datensätze miteinander zu verknüpfen.
Der Join-Operator
In KQL kannst du mit join zwei Datensätze auf Basis eines gemeinsamen Werts verknüpfen – z. B. anhand der Device ID oder der Entra ID.
Das funktioniert wie ein inner join in SQL, d. h. es werden nur die Zeilen zurückgegeben, die in beiden Datensätzen übereinstimmen.
Grundsyntax
Kategorie1
| join Kategorie2
Beispiel: Microsoft-Geräte mit genau 8 GB RAM finden
Angenommen, wir möchten alle Geräte anzeigen, die von Microsoft hergestellt wurden und genau 8 GB RAM besitzen – mit den Spalten Gerätename, DeviceId und EntraDeviceId.
So sieht die KQL-Abfrage aus
Device
| where Manufacturer == „Microsoft“
| join MemoryInfo
| where PhysicalMemoryTotalBytes == „8589934592“
| project DeviceName, DeviceId, EntraDeviceId
Schritt-für-Schritt-Erklärung
- Geräte von Microsoft filtern
Device
| where Manufacturer == „Microsoft“
Das grenzt die Ergebnisse auf Geräte von Microsoft ein (z. B. Surface-Modelle oder Hyper-V-VMs).
- Mit der Kategorie „MemoryInfo“ verknüpfen
join MemoryInfo
Dadurch erhalten wir Zugriff auf RAM-Informationen pro Gerät.
- Geräte mit genau 8 GB RAM filtern
where PhysicalMemoryTotalBytes == „8589934592“
GB RAM entsprechen 8 × 1024³ = 8589934592 Bytes.
- Gewünschte Spalten anzeigen
project DeviceName, DeviceId, EntraDeviceId
Diese Ausgabe zeigt dir:
- DeviceName: Den Anzeigenamen des Geräts
- DeviceId: Die eindeutige ID in Intune
- EntraDeviceId: Die zugehörige ID in Microsoft Entra ID
Wie bei allem gilt: Am besten lernt man, indem man eigene Abfragen schreibt und einfach ein bisschen ausprobiert.
Mattia ist gespannt, was du damit umsetzt – viel Spaß beim Tüfteln!