Compartir a través de


Operador !in

Filtra un conjunto de registros para los datos sin una cadena que distingue mayúsculas de minúsculas.

En la tabla siguiente se proporciona una comparación de los in operadores:

Operador Descripción Distingue mayúsculas de minúsculas Ejemplo (produce true)
in Igual a uno de los elementos "abc" in ("123", "345", "abc")
!in No es igual a uno de los elementos "bca" !in ("123", "345", "abc")
in~ Es igual a cualquiera de los elementos No "Abc" in~ ("123", "345", "abc")
!in~ No es igual a uno de los elementos No "bCa" !in~ ("123", "345", "ABC")

Nota

Las matrices anidadas se aplanan en una sola lista de valores. Por ejemplo, x in (dynamic([1,[2,3]])) se convierte en x in (1,2,3).

Para obtener más información sobre otros operadores y determinar qué operador es más adecuado para la consulta, consulte operadores de cadena de tipo de datos.

Los operadores que no distinguen mayúsculas de minúsculas solo se admiten actualmente para texto ASCII. Para la comparación no ASCII, utilice la función tolower().

Consejos de rendimiento

Nota

El rendimiento depende del tipo de búsqueda y de la estructura de los datos. Para conocer los procedimientos recomendados, consulte Procedimientos recomendados de consulta.

Syntax

T|wherecol!in(Expresión, ... )

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Tipo Requerido Descripción
T string ✔️ Entrada tabular que se va a filtrar.
col string ✔️ Columna por la que se va a filtrar.
expression escalar o tabular ✔️ Expresión que especifica los valores para los que se va a buscar. Cada expresión puede ser un valor escalar o una expresión tabular que genera un conjunto de valores. Si una expresión tabular tiene varias columnas, se usa la primera columna. La búsqueda tendrá en cuenta hasta 1000 000 valores distintos.

Devoluciones

Las filas de T en las que el predicado es true.

Ejemplo

Lista de escalares

En la consulta siguiente se muestra cómo usar !in con una lista separada por comas de valores escalares.

StormEvents 
| where State !in ("FLORIDA", "GEORGIA", "NEW YORK") 
| count

Salida

Count
54291

Matriz dinámica

En la consulta siguiente se muestra cómo usar !in con una matriz dinámica.

StormEvents 
| where State !in (dynamic(["FLORIDA", "GEORGIA", "NEW YORK"])) 
| count

Salida

Count
54291

La misma consulta también se puede escribir con una instrucción let.

let states = dynamic(["FLORIDA", "GEORGIA", "NEW YORK"]);
StormEvents 
| where State !in (states)
| summarize count() by State

Salida

Count
54291

Expresión tabular

En la consulta siguiente se muestra cómo usar !in con una expresión tabular insertada. Observe que una expresión tabular insertada debe ir entre paréntesis dobles.

StormEvents 
| where State !in (PopulationData | where Population > 5000000 | project State)
| summarize count() by State

Salida

State Count
KANSAS 3166
IOWA 2337
NEBRASKA 1766
OKLAHOMA 1716
SOUTH DAKOTA 1567
... ...

La misma consulta también se puede escribir con una instrucción let. Tenga en cuenta que los paréntesis dobles que se proporcionan en el último ejemplo no son necesarios en este caso.

let large_states = PopulationData | where Population > 5000000 | project State;
StormEvents 
| where State !in (large_states)
| summarize count() by State

Salida

State Count
KANSAS 3166
IOWA 2337
NEBRASKA 1766
OKLAHOMA 1716
SOUTH DAKOTA 1567
... ...