Compartilhar via


plug-in rows_near()

Localiza linhas próximas a uma condição especificada.

O plug-in é invocado com o evaluate operador .

Syntax

T| evaluaterows_near(Condição,NumRows, [,RowsAfter ])

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Tipo Obrigatório Descrição
T string ✔️ A expressão tabular de entrada.
Condição bool ✔️ Representa a condição para localizar linhas ao redor.
NumRows int ✔️ O número de linhas a serem encontradas antes e depois da condição.
RowsAfter int Quando especificado, substitui o número de linhas a serem encontradas após a condição.

Retornos

Cada linha da entrada que está dentro de NumRows de uma trueCondição, Quando RowsAfter é especificado, retorna todas as linhas da entrada que é NumRows antes ou RowsAfter após uma trueCondição.

Exemplo

Localize linhas com um "Error"Estado e retorne 2 linhas antes e depois do "Error" registro.

datatable (Timestamp:datetime, Value:long, State:string )
[
    datetime(2021-06-01), 1, "Success",
    datetime(2021-06-02), 4, "Success",
    datetime(2021-06-03), 3, "Success",
    datetime(2021-06-04), 11, "Success",
    datetime(2021-06-05), 15, "Success",
    datetime(2021-06-06), 2, "Success",
    datetime(2021-06-07), 19, "Error",
    datetime(2021-06-08), 12, "Success",
    datetime(2021-06-09), 7, "Success",
    datetime(2021-06-10), 9, "Success",
    datetime(2021-06-11), 4, "Success",
    datetime(2021-06-12), 1, "Success",
]
| sort by Timestamp asc 
| evaluate rows_near(State == "Error", 2)

Saída

Timestamp Valor Estado
2021-06-05 00:00:00.0000000 15 Êxito
2021-06-06 00:00:00.0000000 2 Êxito
2021-06-07 00:00:00.0000000 19 Erro
2021-06-08 00:00:00.0000000 12 Êxito
2021-06-09 00:00:00.0000000 7 Êxito