Condividi tramite


prev()

Si applica a: ✅Microsoft Fabric✅Azure Esplora dati Azure MonitorMicrosoft Sentinel

Restituisce il valore di una colonna specifica in una riga specificata. La riga specificata si trova in corrispondenza di un offset specificato dalla riga corrente in un set di righe serializzato.

Sintassi

prev(column, [ offset ], [ default_value ] )

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Digita Obbligatorio Descrizione
column string ✔️ Colonna da cui ottenere i valori.
offset int Offset da tornare indietro nelle righe. Il valore predefinito è 1.
default_value scalare Valore predefinito da utilizzare quando non sono presenti righe precedenti da cui accettare il valore. Il valore predefinito è null.

Esempi

Filtrare i dati in base al confronto tra righe adiacenti

La query seguente restituisce righe che mostrano interruzioni più lunghe di un quarto di secondo tra le chiamate a sensor-9.

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

Output

Timestamp: SensorName Valore 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
... ... ... ... ... ...

Eseguire l'aggregazione in base al confronto tra righe adiacenti

La query seguente calcola la differenza di tempo media in millisecondi tra le chiamate a sensor-9.

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

Output

avg_timeDiffInMilliseconds
30.726900061254298

Estendere la riga con i dati della riga precedente

Nella query seguente, come parte della serializzazione eseguita con l'operatore serialize, viene aggiunta una nuova colonna previous_session_type con i dati della riga precedente. Poiché non è stata eseguita alcuna sessione prima della prima sessione, la colonna è vuota nella prima riga.

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

Output

time_and_duration session_title session_type previous_session_type
Lun, 6 maggio, 8:30-10:00 Vision Keynote - Satya Nadella Interventi
Lunedì, 6 maggio, 1:20-1:40 pm Azure Esplora dati: Analisi avanzata delle serie temporali Sessione Expo Interventi
Lun, 6 maggio, 2:00-3:00 pm Piattaforma dati di Azure - Powering Modern Applications and Cloud Scale Analytics at Petabyte Scale Scale (Piattaforma dati di Azure - Powering Modern Applications and Cloud Scale Analytics at Petabyte Scale) Evasione Sessione Expo
Lun, 6 maggio, 4:00-4:20 pm Come BASF usa Servizi dati di Azure Sessione Expo Evasione
Lun, 6 maggio, 6:50 - 7:10 pm Azure Esplora dati: rendere operativi i modelli di Machine Learning Sessione Expo Sessione Expo
... ... ... ...