Übung: Neuordnen zurückgegebener Daten mit dem sort-Operator

Abgeschlossen

Wie Sie sich erinnern, haben Sie im Beispiel zu Sturmereignissen Ereignisse nach Zeitraum, Schlüsselwörtern und Werten in einer bestimmten Spalte eingegrenzt. Nun möchten Sie diese Ergebnisse so anordnen, dass die Sturmereignisse mit den höchsten Schäden zuerst angezeigt werden.

Verwenden Sie den sort-Operator

Unsortierte Daten lassen sich nur schwer auswerten. Ordnen wir die Daten etwas übersichtlicher an, indem wir die Reihenfolge ändern, in der die Ergebnisse ausgegeben werden. Sie möchten wissen, welche Ereignisse den höchsten Sachschaden verursacht haben, daher ordnen Sie die Ergebnisse nach dem Feld DamageProperty an.

  1. Führen Sie die folgende Abfrage aus:

    Abfrage ausführen

    StormEvents
    | where DamageProperty > 0
    | project State, EventType, DamageProperty
    | sort by DamageProperty desc
    
  2. Sie sollten Ergebnisse erhalten, die wie in der folgenden Abbildung aussehen:

    Screenshot of query results for the sort operator.

  3. Beachten Sie, dass zuerst die Ergebnisse mit den höchsten Sachschäden aufgeführt werden und die Werte dann abnehmen. Die Abfrage sortiert standardmäßig in absteigender Reihenfolge, sodass Sie desc weglassen können und trotzdem die gleichen Ergebnisse erhalten. Die Bundesstaaten und Ereignisarten sind nicht sortiert.

Sortieren nach mehreren Ausdrücken

Jede Region weist einzigartige Wettermuster auf, daher möchten Sie wissen, welche Ereignisse in den einzelnen Bundesstaaten den größten Schaden verursacht haben. Zum Beantworten dieser Frage sortieren Sie zuerst nach dem Namen des Bundesstaats und dann innerhalb der einzelnen Staaten nach der Schadenshöhe. Der sort-Operator sortiert standardmäßig in absteigender Reihenfolge, daher verwenden Sie asc, um anzugeben, dass Sie die Namen der Bundesstaaten in aufsteigender Reihenfolge sortieren möchten.

  1. Führen Sie die folgende Abfrage aus:

    Abfrage ausführen

    StormEvents
    | where DamageProperty > 0
    | project State, EventType, DamageProperty
    | sort by State asc, DamageProperty
    
  2. Sie sollten Ergebnisse erhalten, die wie in der folgenden Abbildung aussehen:

    Screenshot of query results for two sort operators.

  3. Beachten Sie, dass Sie nun eine Tabelle mit den gleichen Zeilen wie in der vorherigen Abfrage erhalten haben, diese aber in einer anderen Reihenfolge sortiert sind. Hier wird zuerst nach dem Namen des Bundesstaats sortiert, beginnend mit Alabama. Innerhalb der Ergebnisse für den Bundesstaat Alabama sind die Werte für den Sachschaden in absteigender Reihenfolge sortiert.

Verwenden Sie den top-Operator

Anstatt die Ergebnisse zu sortieren und den oberen Bereich nach einer bestimmten Anzahl von Ergebnissen zu durchsuchen, können Sie den top-Operator verwenden, um eine bestimmte Anzahl von Ergebnissen mit den höchsten Werten anzuzeigen. Tatsächlich weist der top-Operator eine höhere Leistung auf, daher ist er die bevorzugte Wahl, wenn Sie nur eine bestimmte Anzahl von Topergebnissen wünschen.

  1. Führen Sie die folgende Abfrage aus:

    Abfrage ausführen

    StormEvents
    | where State == "FLORIDA"
    | top 10 by DamageProperty
    | project State, EventType, DamageProperty
    
  2. Sie sollten Ergebnisse erhalten, die wie in der folgenden Abbildung aussehen:

    Screenshot of query results for the top operator.