prev()
S’applique à : ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Retourne la valeur d’une colonne spécifique dans une ligne spécifiée. La ligne spécifiée se trouve à un décalage spécifié de la ligne actuelle dans un jeu de lignes sérialisé.
Syntaxe
prev(
column,
[ offset ],
[ default_value ] )
En savoir plus sur les conventions de syntaxe.
Paramètres
Nom | Type | Requise | Description |
---|---|---|---|
column | string |
✔️ | Colonne à partir de laquelle obtenir les valeurs. |
offset | int |
Décalage pour revenir en arrière dans les lignes. La valeur par défaut est 1. | |
default_value | scalaire | Valeur par défaut à utiliser lorsqu’il n’existe aucune ligne précédente à partir de laquelle prendre la valeur. Par défaut, il s’agit de null . |
Exemples
Filtrer les données en fonction de la comparaison entre les lignes adjacentes
La requête suivante retourne des lignes qui affichent des sauts 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', Timestamp, prev(Timestamp, 1))
| where timeDiffInMilliseconds > 250
Sortie
Timestamp | SensorName | Valeur | PublisherId | MachineId | timeDiff |
---|---|---|---|---|---|
2022-04-13T00:58:53.048506Z | capteur-9 | 0.39217481975439894 | fdbd39ab-82ac-4ca0-99ed-2f83daf3f9bb | M100 | 251 |
2022-04-13T01:07:09.63713Z | capteur-9 | 0.46645392778288297 | e3ed081e-501b-4d59-8e60-852463d9131 | M100 | 313 |
2022-04-13T01:07:10.858267Z | capteur-9 | 0.693091598493419 | 278ca033-2b5e-4f2c-b493-00319b275aea | M100 | 254 |
2022-04-13T01:07:11.203834Z | capteur-9 | 0.52415808840249778 | 4ea27181-392d-4947-b811-ad5af02a54bb | M100 | 331 |
2022-04-13T01:07:14.431908Z | capteur-9 | 0.35430645405452 | 0af415c2-59dc-4a50-89c3-9a18ae5d621f | M100 | 268 |
... | ... | ... | ... | ... | ... |
Effectuer une agrégation en fonction de la comparaison entre les 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', Timestamp, prev(Timestamp, 1))
| summarize avg(timeDiffInMilliseconds)
Sortie
avg_timeDiffInMilliseconds |
---|
30.726900061254298 |
Étendre la ligne avec des données de la ligne précédente
Dans la requête suivante, dans le cadre de la sérialisation effectuée avec l’opérateur sérialiser, une nouvelle colonne previous_session_type
est ajoutée avec des données de la ligne précédente. Étant donné qu’il n’y a pas eu de session avant la première session, la colonne est vide dans la première ligne.
ConferenceSessions
| where conference == 'Build 2019'
| serialize previous_session_type = prev(session_type)
| project time_and_duration, session_title, session_type, previous_session_type
Sortie
time_and_duration | session_title | session_type | previous_session_type |
---|---|---|---|
Mon, 6 mai, 8:30-10:00 | Vision Keynote - Satya Nadella | Présentation | |
Mon, 6 mai, 1:20-1:40 | Azure Data Explorer : Analyse avancée des séries chronologiques | Expo Session | Présentation |
Mon, 6 mai, 2:00-3:00 | Plateforme de données Azure - Powering Modern Applications and Cloud Scale Analytics à l’échelle pétaoctet | Breakout | Expo Session |
Mon, 6 mai, 4h00-17h20 | Utilisation d’Azure Data Services | Expo Session | Breakout |
Mon, 6 mai, 6h50 - 17h10 | Azure Data Explorer : Opérationnaliser vos modèles ML | Expo Session | Expo Session |
... | ... | ... | ... |