Partilhar via


operador where

Aplica-se a: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Filtra uma tabela para o subconjunto de linhas que satisfazem a um predicado.

Os where operadores e filter são equivalentes

Sintaxe

T | where Predicado

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
T string ✔️ Entrada tabular cujos registros devem ser filtrados.
Predicado string ✔️ Expressão que é avaliada como um bool para cada linha em T.

Devoluções

As linhas em T para as quais o Predicate é true.

Observação

Todas as funções de filtragem retornam false quando comparadas com valores nulos. Use funções especiais com reconhecimento de nulo para escrever consultas que lidam com valores nulos.

Dicas de desempenho

  • Use comparações simples entre os nomes de coluna e constantes. (“Constante” significa constante na tabela, portanto, now() e ago() estão OK, bem como valores escalares atribuídos usando uma instrução let.)

    Por exemplo, prefira where Timestamp >= ago(1d) a where bin(Timestamp, 1d) == ago(1d).

  • Termos mais simples primeiro: se houver várias cláusulas unidas com and, primeiro coloque as cláusulas que envolvam apenas uma coluna. Assim, Timestamp > ago(1d) and OpId == EventId é melhor do que o oposto.

Para saber mais, confira o resumo de operadores de cadeia de caracteres disponíveis e o resumo de operadores numéricos disponíveis.

Exemplos

Comparações de pedidos por complexidade

A consulta a seguir retorna registros de tempestade que relatam propriedades danificadas, são inundações e começam e terminam em lugares diferentes.

Observe que colocamos a comparação entre duas colunas por último, pois o operador where não pode usar o índice e força uma verificação.

StormEvents
| project DamageProperty, EventType, BeginLocation, EndLocation
| where DamageProperty > 0
    and EventType == "Flood"
    and BeginLocation != EndLocation 

A tabela a seguir mostra apenas os 10 principais resultados. Para ver a saída completa, execute a consulta.

DamageProperty EventType BeginLocation EndLocation
5.000 Saturação CIDADE DE FAYETTE LOWBER
5.000 Saturação MORRISVILLE OESTE WAYNESBURG
10000 Saturação BOSQUE DE COPELAND HARRIS
5.000 Saturação GLENFORD MT PERRY
25000 Saturação PARQUE AÉREO DE BÚFALO DE SENECA ORIENTAL ARPT
20000 Saturação EBENEZER SLOAN
10000 Saturação BUEL CALHOUN
10000 Saturação GOODHOPE WEST MILFORD
5.000 Saturação FLORESTA DE DUNQUERQUE
20000 Saturação FARMINGTON MANNINGTON

Verifique se a coluna contém string

A consulta a seguir retorna as linhas nas quais a palavra "vaca" aparece em qualquer coluna.

StormEvents
| where * has "cow"