next()

Devolve o valor de uma coluna numa linha que está em algum desvio ao seguir a linha atual num conjunto de linhas serializado.

Syntax

next(coluna, [ desvio,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 A quantidade de linhas a mover da linha atual. A predefinição é 1.
default_value escalar O valor predefinido quando não existe nenhum valor na linha seguinte. Quando não é especificado nenhum valor predefinido, null é utilizado.

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', next(Timestamp, 1), Timestamp)
| 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', next(Timestamp, 1), Timestamp)
| summarize avg(timeDiffInMilliseconds)

Saída

avg_timeDiffInMilliseconds
30.726900061254298

Expandir linha com dados da linha seguinte

Na consulta seguinte, como parte da serialização feita com o operador de serialização, é adicionada uma nova coluna next_session_type com dados da linha seguinte.

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

Saída

time_and_duration session_title session_type next_session_type
Seg, 6 de maio, 8:30-10:00 Sessão Principal de Visão - Satya Nadella Keynote Expo Session
Seg, 6 de maio, 13:20-13:40 Azure Data Explorer: Análise avançada da Série Temporal Expo Session Simultânea
Seg, 6 de maio, das 14:00 às 15:00 Plataforma de Dados do Azure – Powering Modern Applications and Cloud Scale Analytics at Petabyte Scale (Plataforma de Dados do Azure – Powering Modern Applications and Cloud Scale Analytics at Petabyte Scale) Simultânea Expo Session
Seg, 6 de maio, 16:00-16:20 Como o BASF está a utilizar os Serviços de Dados do Azure Expo Session Expo Session
Seg, 6 de maio, 18:50 - 19:10 Azure Data Explorer: Operacionalizar os modelos de ML Expo Session Expo Session
... ... ... ...