Exercice : Réorganiser les données retournées à l’aide de l’opérateur sort

Effectué

Rappelez-vous que dans l’exemple des tempêtes, vous avez limité les événements en fonction d’un intervalle de temps, de mots clés et de valeurs dans une colonne particulière. À présent, vous souhaitez organiser ces résultats pour voir en premier les tempêtes qui ont occasionné le plus de dégâts.

Utilisez l’opérateur sort

Il est difficile d’y voir clair dans des données désorganisées. Rendons leur compréhension un peu plus facile en organisant l’ordre dans lequel les résultats sont présentés. Vous souhaitez savoir quels sont les événements qui ont causé le plus de dégâts matériels, vous allez donc trier les résultats en fonction du champ DamageProperty.

  1. Exécutez la requête suivante :

    Exécuter la requête

    StormEvents
    | where DamageProperty > 0
    | project State, EventType, DamageProperty
    | sort by DamageProperty desc
    
  2. Vous devez obtenir des résultats qui ressemblent à l’image suivante :

    Screenshot of query results for the sort operator.

  3. Notez que les résultats commencent par la valeur la plus élevée de dégâts matériels, puis que ces derniers diminuent. En fait, la requête trie dans l’ordre décroissant par défaut. Vous pouvez donc omettre desc et obtenir les mêmes résultats. L’État et les types d’événements ne sont pas triés du tout.

Trier sur plusieurs expressions

Chaque région ayant des modèles météorologiques uniques, vous souhaitez savoir à présent quels sont les événements qui ont occasionné le plus de dégâts dans chaque État. Pour répondre à cette question, vous allez d’abord effectuer un tri sur le nom de l’État, puis sur les dégâts occasionnés au sein de chaque État. L’opérateur sort effectue un tri dans l’ordre décroissant par défaut. Vous allez donc utiliser asc pour indiquer que vous souhaitez trier les noms des États par ordre croissant.

  1. Exécutez la requête suivante :

    Exécuter la requête

    StormEvents
    | where DamageProperty > 0
    | project State, EventType, DamageProperty
    | sort by State asc, DamageProperty
    
  2. Vous devez obtenir des résultats qui ressemblent à l’image suivante :

    Screenshot of query results for two sort operators.

  3. Notez que vous avez à présent une table avec les mêmes lignes que la requête précédente, mais triées dans un ordre distinct. Ici, nous commençons par effectuer un tri selon le nom de l’État, en commençant par Alabama. Dans les résultats de l’État de l’Alabama, les valeurs des dégâts matériels sont triées par ordre décroissant.

Utilisez l’opérateur top

Au lieu de trier et d’analyser les valeurs les plus élevées pour un certain nombre de résultats, vous pouvez utiliser l’opérateur top afin d’afficher un nombre spécifique de meilleurs résultats. En fait, l’opérateur top est plus performant. Il s’agit donc du choix à privilégier quand vous souhaitez simplement obtenir un certain nombre de meilleurs résultats.

  1. Exécutez la requête suivante :

    Exécuter la requête

    StormEvents
    | where State == "FLORIDA"
    | top 10 by DamageProperty
    | project State, EventType, DamageProperty
    
  2. Vous devez obtenir des résultats qui ressemblent à l’image suivante :

    Screenshot of query results for the top operator.