next()

Retourne la valeur d’une colonne d’une ligne qui se trouve à un certain décalage suivant la ligne actuelle dans un ensemble de lignes sérialisées.

Syntax

next(Colonne, [ décalage,default_value ])

Découvrez les conventions de syntaxe.

Paramètres

Nom Type Obligatoire Description
column string ✔️ Colonne à partir de laquelle obtenir les valeurs.
offset int Quantité de lignes à déplacer à partir de la ligne actuelle. 1 constitue la valeur par défaut.
default_value scalaire Valeur par défaut lorsqu’il n’y a aucune valeur dans la ligne suivante. Lorsqu’aucune valeur par défaut n’est spécifiée, null est utilisé.

Exemples

Filtrer les données en fonction de la comparaison entre des lignes adjacentes

La requête suivante retourne des lignes qui montrent des interruptions de plus d’un quart de seconde entre les appels à sensor-9.

TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', next(Timestamp, 1), Timestamp)
| where timeDiffInMilliseconds > 250

Sortie

Timestamp SensorName Valeur PublisherId MachineId timeDiff
2022-04-13T00 :58 :53.048506Z sensor-9 0.39217481975439894 fdbd39ab-82ac-4ca0-99ed-2f83daf3f9bb M100 251
2022-04-13T01 :07 :09.63713Z sensor-9 0.46645392778288297 e3ed081e-501b-4d59-8e60-8524633d9131 M100 313
2022-04-13T01 :07 :10.858267Z sensor-9 0.693091598493419 278ca033-2b5e-4f2c-b493-00319b275aea M100 254
2022-04-13T01 :07 :11.203834Z sensor-9 0.52415808840249778 4ea27181-392d-4947-b811-ad5af02a54bb M100 331
2022-04-13T01 :07 :14.431908Z sensor-9 0.35430645405452 0af415c2-59dc-4a50-89c3-9a18ae5d621f M100 268
... ... ... ... ... ...

Effectuer une agrégation basée sur la comparaison entre des lignes adjacentes

La requête suivante calcule la différence de temps moyenne en millisecondes entre les appels à sensor-9.

TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', next(Timestamp, 1), Timestamp)
| summarize avg(timeDiffInMilliseconds)

Sortie

avg_timeDiffInMilliseconds
30.726900061254298

Étendre la ligne avec les données de la ligne suivante

Dans la requête suivante, dans le cadre de la sérialisation effectuée avec l’opérateur sérialiser, une nouvelle colonne next_session_type est ajoutée avec les données de la ligne suivante.

ConferenceSessions
| where conference == 'Build 2019'
| serialize next_session_type = next(session_type)
| project time_and_duration, session_title, session_type, next_session_type

Sortie

time_and_duration session_title session_type next_session_type
lun, 6 mai, 8h30-10h00 Vision Keynote - Satya Nadella Keynote Expo Session
lun, 6 mai, 13h20-13h40 Azure Data Explorer : Analyse avancée des séries chronologiques Expo Session Breakout
Lun, 6 mai, 14 :00-15 :00 Plateforme de données Azure - Powering Modern Applications and Cloud Scale Analytics à l’échelle du pétaoctet Breakout Expo Session
lun, 6 mai, 16 :00-16 :20 Comment BASF utilise Azure Data Services Expo Session Expo Session
Lun, 6 mai, 18 :50 - 19 :10 Azure Data Explorer : Opérationnaliser vos modèles ML Expo Session Expo Session
... ... ... ...