prev()
Platí pro: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Vrátí hodnotu konkrétního sloupce v zadaném řádku. Zadaný řádek je na zadaném posunu od aktuálního řádku v serializované sadě řádků.
Syntaxe
prev(
column,
[ offset ],
[ default_value ] )
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Type | Požadováno | Popis |
---|---|---|---|
sloupec | string |
✔️ | Sloupec, ze kterého chcete získat hodnoty. |
offset | int |
Posun pro návrat do řádků. Výchozí hodnota je 1. | |
default_value | skalární | Výchozí hodnota, která se má použít, pokud neexistují žádné předchozí řádky, ze kterých se má hodnota vzít. Výchozí hodnota je null . |
Příklady
Filtrování dat na základě porovnání mezi sousedními řádky
Následující dotaz vrátí řádky, které zobrazují konce delší než čtvrtinu sekundy mezi voláními sensor-9
.
TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| where timeDiffInMilliseconds > 250
Výstup
Časové razítko | SensorName | Hodnota | PublisherId | Id počítače | timeDiff |
---|---|---|---|---|---|
2022-04-13T00:58:53.048506Z | snímač-9 | 0.39217481975439894 | fdbd39ab-82ac-4ca0-99ed-2f83daf3f9bb | M100 | 251 |
2022-04-13T01:07:09.63713Z | snímač-9 | 0.46645392778288297 | e3ed081e-501b-4d59-8e60-8524633d9131 | M100 | 313 |
2022-04-13T01:07:10.858267Z | snímač-9 | 0.693091598493419 | 278ca033-2b5e-4f2c-b493-00319b275aea | M100 | 254 |
2022-04-13T01:07:11.203834Z | snímač-9 | 0.52415808840249778 | 4ea27181-392d-4947-b811-ad5af02a54bb | M100 | 331 |
2022-04-13T01:07:14.431908Z | snímač-9 | 0.35430645405452 | 0af415c2-59dc-4a50-89c3-9a18ae5d621f | M100 | 268 |
... | ... | ... | ... | ... | ... |
Agregace založená na porovnání mezi sousedními řádky
Následující dotaz vypočítá průměrný časový rozdíl v milisekundách mezi voláními sensor-9
.
TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| summarize avg(timeDiffInMilliseconds)
Výstup
avg_timeDiffInMilliseconds |
---|
30.726900061254298 |
Rozšíření řádku s daty z předchozího řádku
V následujícím dotazu se v rámci serializace provedené pomocí operátoru serializace přidá nový sloupec previous_session_type
s daty z předchozího řádku. Vzhledem k tomu, že před první relací nebyla žádná relace, sloupec je prázdný na prvním řádku.
ConferenceSessions
| where conference == 'Build 2019'
| serialize previous_session_type = prev(session_type)
| project time_and_duration, session_title, session_type, previous_session_type
Výstup
time_and_duration | session_title | session_type | previous_session_type |
---|---|---|---|
Po, 6. května 8:30-10:00 | Vision Key - Satya Nadella | Hlavní myšlenka | |
Po, 6. května, 1:20-13:40 | Azure Data Explorer: Pokročilá analýza časových řad | Expo Session | Hlavní myšlenka |
Po, 6. května, 2:00-3:00 pm | Datová platforma Azure – Powering Modern Applications and Cloud Scale Analytics at Petabyte Scale | Propuknutí | Expo Session |
Po, 6. května, 4:00-4:20 pm | Jak POUŽÍVÁ SLUŽBA AZURE Data Services | Expo Session | Propuknutí |
Po, 6. května, 6:50 - 17:10 | Azure Data Explorer: Zprovoznění modelů ML | Expo Session | Expo Session |
... | ... | ... | ... |