Todos los productos
Search
Centro de documentos

:in y notin

Última actualización: Sep 04, 2026

Funciones de funcionalidad

Los campos que se referencian en los parámetros de las funciones de funcionalidad deben configurarse como campos de índice o de atributo, según la descripción de cada función.

A document field used as a function parameter must be configured as an index or an attribute, as required by the specific function.

in o notin: determina si los valores de un campo están en una lista específica

  1. Sintaxis

in(field, "number1|number2")notin(field, "number1|number2")

  1. Parámetros

field: nombre del campo por evaluar. Solo se admiten campos de tipo INT, LITERAL, FLOAT o DOUBLE. No se admiten campos de tipo ARRAY ni TEXT, tampoco el analizador para búsquedas difusas. number N: elementos de un conjunto. Separe varios elementos con barras verticales (|). Cada elemento debe ser una cadena.

  1. Valores de retorno

true/false

  1. Escenarios

Escenario 1: recuperar documentos que contienen "iphone" y cuyo campo type tiene valor 1, 2 o 3. El campo type debe ser de tipo INT.

query=default:'iphone'&&filter=in(type, '1|2|3')

Escenario 2: recuperar documentos que contienen "iphone" y cuyo campo type no tiene valor 1, 2 ni 3. El campo type debe ser de tipo INT32.

query=default:'iphone'&&filter=notin(type, '1|2|3')
  1. Notas de uso

    • El campo que se referencia en los parámetros de las funciones debe configurarse como campo de atributo.

    • Si utiliza la función in o notin en cláusulas filter, no puede usar campos de tipo ARRAY. De lo contrario, se devuelve el siguiente error de sintaxis con código 6141: Filter clause syntax error.

    • La función in(field, "value1|value2") equivale a (field = value1) OR (field = value2). Sin embargo, la función in ofrece mejor rendimiento. El mismo principio aplica para la función notin.

    • Proporcionar una gran cantidad de valores (por ejemplo, miles) a la función in o notin puede degradar significativamente el rendimiento de la consulta. Una lista de valores más larga incrementa la sobrecarga computacional del filtrado, lo que puede provocar mayor latencia en las consultas o incluso un tiempo de espera agotado.

    • Si necesita pasar una gran cantidad de valores, divida la lista en lotes más pequeños (por ejemplo, 500 valores o menos por lote), ejecute consultas separadas y luego combine los resultados.