operador !in~
Aplica-se a: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Filtra um conjunto de registros para dados sem uma cadeia de caracteres que não diferencia maiúsculas de minúsculas.
A tabela a seguir fornece uma comparação dos in
operadores:
Operador | Descrição | Diferencia maiúsculas de minúsculas | Exemplo (suspende true ) |
---|---|---|---|
in |
Equivale a um dos elementos | Sim | "abc" in ("123", "345", "abc") |
!in |
Não equivale a qualquer um dos elementos | Sim | "bca" !in ("123", "345", "abc") |
in~ |
Igual a qualquer um dos elementos | Não | "Abc" in~ ("123", "345", "abc") |
!in~ |
Não equivale a qualquer um dos elementos | Não | "bCa" !in~ ("123", "345", "ABC") |
Observação
As matrizes aninhadas são niveladas em uma lista de valores. Por exemplo, x in (dynamic([1,[2,3]]))
se tornará x in (1,2,3)
.
Para obter mais informações sobre outros operadores e determinar qual operador é mais apropriado para sua consulta, consulte operadores de cadeia de caracteres de tipo de dados.
Os operadores que não diferenciam maiúsculas de minúsculas atualmente têm suporte apenas para texto ASCII. Para comparação não ASCII, use a função tolower().
Dicas de desempenho
Observação
O desempenho depende do tipo de pesquisa e da estrutura dos dados. Para obter as práticas recomendadas, consulte Práticas recomendadas de consulta.
Quando possível, use o !in que diferencia maiúsculas de minúsculas.
Sintaxe
T |
where
col!in~
(
expressão ...,
)
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Digitar | Obrigatória | Descrição |
---|---|---|---|
T | string |
✔️ | A entrada tabular a ser filtrada. |
col | string |
✔️ | A coluna pela qual filtrar. |
expressão | escalar ou tabular | ✔️ | Uma expressão que especifica os valores a serem pesquisados. Cada expressão pode ser um valor escalar ou uma expressão tabular que produz um conjunto de valores. Se uma expressão tabular tiver várias colunas, a primeira coluna será usada. A pesquisa considerará até 1.000.000 de valores distintos. |
Devoluções
As linhas em T para as quais o predicado é true
.
Exemplo
Lista de escalares
A consulta a seguir mostra como usar !in~
com uma lista separada por vírgulas de valores escalares.
StormEvents
| where State !in~ ("Florida", "Georgia", "New York")
| count
Saída
Count |
---|
54,291 |
Matriz dinâmica
A consulta a seguir mostra como usar !in~
com uma matriz dinâmica.
StormEvents
| where State !in~ (dynamic(["Florida", "Georgia", "New York"]))
| count
Saída
Count |
---|
54291 |
A mesma consulta também pode ser escrita com uma instrução let.
let states = dynamic(["Florida", "Georgia", "New York"]);
StormEvents
| where State !in~ (states)
| summarize count() by State
Saída
Count |
---|
54291 |
Expressão tabular
A consulta a seguir mostra como usar !in~
com uma expressão tabular embutida. Observe que uma expressão tabular embutida deve ser colocada entre parênteses duplos.
StormEvents
| where State !in~ (PopulationData | where Population > 5000000 | project State)
| summarize count() by State
Saída
Estado | count_ |
---|---|
KANSAS | 3166 |
IOWA | 2337 |
NEBRASKA | 1766 |
OKLAHOMA | 1716 |
DAKOTA DO SUL | 1567 |
... | ... |
A mesma consulta também pode ser escrita com uma instrução let. Observe que os parênteses duplos, conforme fornecido no último exemplo, não são necessários neste caso.
let large_states = PopulationData | where Population > 5000000 | project State;
StormEvents
| where State !in~ (large_states)
| summarize count() by State
Saída
Estado | count_ |
---|---|
KANSAS | 3166 |
IOWA | 2337 |
NEBRASKA | 1766 |
OKLAHOMA | 1716 |
DAKOTA DO SUL | 1567 |
... | ... |