prev()
Devolve o valor de uma coluna específica numa linha especificada. A linha especificada encontra-se num desvio especificado da linha atual num conjunto de linhas serializado.
Syntax
prev(
coluna,
[ offset ],
[ default_value ] )
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Tipo | Necessário | Descrição |
---|---|---|---|
coluna | string |
✔️ | A coluna a partir da qual obter os valores. |
desvio | int |
O desvio para voltar atrás nas linhas. A predefinição é 1. | |
default_value | escalar | O valor predefinido a ser utilizado quando não existem linhas anteriores para tirar o valor. A predefinição é null . |
Exemplos
Filtrar dados com base na comparação entre linhas adjacentes
A consulta seguinte devolve linhas que mostram quebras superiores a um quarto de segundo entre chamadas para sensor-9
.
TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| where timeDiffInMilliseconds > 250
Saída
CarimboDeDataEHora | SensorName | Valor | 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 |
... | ... | ... | ... | ... | ... |
Efetuar agregação com base na comparação entre linhas adjacentes
A consulta seguinte calcula a diferença média de tempo em milissegundos entre chamadas para sensor-9
.
TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| summarize avg(timeDiffInMilliseconds)
Saída
avg_timeDiffInMilliseconds |
---|
30.726900061254298 |
Expandir linha com dados da linha anterior
Na seguinte consulta, como parte da serialização feita com o operador de serialização, é adicionada uma nova coluna previous_session_type
com dados da linha anterior. Uma vez que não houve sessão antes da primeira sessão, a coluna está vazia na primeira linha.
ConferenceSessions
| where conference == 'Build 2019'
| serialize previous_session_type = prev(session_type)
| project time_and_duration, session_title, session_type, previous_session_type
Saída
time_and_duration | session_title | session_type | previous_session_type |
---|---|---|---|
Mon, 6 de maio, 8:30-10:00 | Keynote de Visão - Satya Nadella | Keynote | |
Mon, 6 de maio, 13:20-13:40 | Azure Data Explorer: Análise avançada da Série Temporal | Expo Session | Keynote |
Mon, 6 de maio, 14:00-15:00 | Plataforma de Dados do Azure – Powering Modern Applications and Cloud Scale Analytics at Petabyte Scale (Powering Modern Applications and Cloud Scale Analytics at Petabyte Scale) | Simultânea | Expo Session |
Mon, 6 de maio, 16:00-16:20 | Como o BASF está a utilizar os Serviços de Dados do Azure | Expo Session | Simultânea |
Mon, 6 de maio, 18:50 - 19:10 | Azure Data Explorer: Operacionalizar os modelos de ML | Expo Session | Expo Session |
... | ... | ... | ... |
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários