prev()
Returnerar värdet för en specifik kolumn på en angiven rad. Den angivna raden har en angiven förskjutning från den aktuella raden i en serialiserad raduppsättning.
Syntax
prev(
Kolumn,
[ offset ],
[ default_value ] )
Läs mer om syntaxkonventioner.
Parametrar
Namn | Typ | Obligatorisk | Beskrivning |
---|---|---|---|
kolumn | string |
✔️ | Kolumnen som värdena ska hämtas från. |
offset | int |
Förskjutningen för att gå tillbaka i rader. Standard är 1. | |
default_value | Skalär | Standardvärdet som ska användas när det inte finns några tidigare rader att ta värdet från. Standardvärdet är null . |
Exempel
Filtrera data baserat på jämförelse mellan intilliggande rader
Följande fråga returnerar rader som visar avbrott som är längre än en fjärdedel av en sekund mellan anrop till sensor-9
.
TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| where timeDiffInMilliseconds > 250
Resultat
Timestamp | SensorName | Värde | 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 |
... | ... | ... | ... | ... | ... |
Utföra aggregering baserat på jämförelse mellan intilliggande rader
Följande fråga beräknar den genomsnittliga tidsskillnaden i millisekunder mellan anrop till sensor-9
.
TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| summarize avg(timeDiffInMilliseconds)
Resultat
avg_timeDiffInMilliseconds |
---|
30.726900061254298 |
Utöka rad med data från föregående rad
I följande fråga, som en del av serialiseringen som utförs med serialiseringsoperatorn, läggs en ny kolumn previous_session_type
till med data från föregående rad. Eftersom det inte fanns någon session före den första sessionen är kolumnen tom på den första raden.
ConferenceSessions
| where conference == 'Build 2019'
| serialize previous_session_type = prev(session_type)
| project time_and_duration, session_title, session_type, previous_session_type
Resultat
time_and_duration | session_title | session_type | previous_session_type |
---|---|---|---|
Mån, 6 maj, 8:30-10:00 | Vision Keynote - Satya Nadella | Keynote | |
Mån, 6 maj, 13:20-13:40 | Azure Data Explorer: Avancerad time series-analys | Expo-session | Keynote |
Mån, 6 maj, 14:00-15:00 | Azures dataplattform – Powering Modern Applications och Cloud Scale Analytics i Petabyte Scale | Breakout | Expo-session |
Mån, 6 maj, 16:00-16:20 | Så använder BASF Azure Data Services | Expo-session | Breakout |
Mån, 6 maj, 6:50 - 19:10 | Azure Data Explorer: Operationalisera dina ML-modeller | Expo-session | Expo-session |
... | ... | ... | ... |
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för