🚀 Prueba Zilliz Cloud, el Milvus completamente gestionado, gratis—¡experimenta un rendimiento 10 veces más rápido! Prueba Ahora>>

milvus-logo
LFAI
Home
  • Guía del usuario

Operadores básicos

Milvus proporciona un amplio conjunto de operadores básicos para ayudarle a filtrar y consultar datos de forma eficiente. Estos operadores le permiten refinar sus condiciones de búsqueda basándose en campos escalares, cálculos numéricos, condiciones lógicas y mucho más. Entender cómo utilizar estos operadores es crucial para construir consultas precisas y maximizar la eficiencia de sus búsquedas.

Operadores de comparación

Los operadores de comparación se utilizan para filtrar datos en función de la igualdad, la desigualdad o el tamaño. Son aplicables a campos numéricos, de texto y de fecha.

Operadores de comparación admitidos.

  • == (Igual a)

  • != (No igual a)

  • > (Mayor que)

  • < (Menor que)

  • >= (Mayor o igual que)

  • <= (Menor o igual que)

Ejemplo 1: Filtrado con Igual a (==)

Suponga que tiene un campo llamado status y quiere encontrar todas las entidades en las que status es "activo". Puede utilizar el operador de igualdad ==.

filter = 'status == "active"'

Ejemplo 2: Filtrado con no igual a (!=)

Para encontrar entidades donde status no sea "inactivo".

filter = 'status != "inactive"'

Ejemplo 3: Filtrado con Mayor que (>)

Si desea encontrar todas las entidades con un age mayor que 30.

filter = 'age > 30'

Ejemplo 4: Filtrado con menor que (<)

Para encontrar las entidades en las que price es inferior a 100.

filter = 'price < 100'

Ejemplo 5: Filtrado con mayor o igual que (>=)

Si desea encontrar todas las entidades con rating mayor o igual a 4.

filter = 'rating >= 4'

Ejemplo 6: Filtrado con menor o igual que (<=)

Para encontrar entidades con discount menor o igual que 10%.

filter = 'discount <= 10'

Operadores de rango

Los operadores de rango ayudan a filtrar datos basándose en conjuntos o rangos de valores específicos.

Operadores de rango admitidos.

  • IN: Se utilizan para buscar valores dentro de un conjunto o rango específico.

  • LIKE: Se utiliza para coincidir con un patrón (principalmente para campos de texto).

Ejemplo 1: Uso de IN para buscar varios valores

Si desea encontrar todas las entidades en las que color sea "rojo", "verde" o "azul".

filter = 'color in ["red", "green", "blue"]'

Esto es útil cuando se quiere comprobar la pertenencia a una lista de valores.

Ejemplo 2: Utilización de LIKE para la búsqueda de patrones

El operador LIKE se utiliza para la comparación de patrones en campos de cadena. Puede coincidir con subcadenas en distintas posiciones dentro del texto: como prefijo, infijo o sufijo. El operador LIKE utiliza el símbolo % como comodín, que puede coincidir con cualquier número de caracteres (incluido el cero).

Coincidencia de prefijo (empieza por)

Para realizar una coincidencia de prefijo, en la que la cadena comienza con un patrón determinado, puede colocar el patrón al principio y utilizar % para que coincida con los caracteres que le siguen. Por ejemplo, para buscar todos los productos cuyo name empiece por "Prod".

filter = 'name LIKE "Prod%"'

Esto coincidirá con cualquier producto cuyo nombre empiece por "Prod", como "Producto A", "Producto B", etc.

Coincidencia de sufijo (termina con)

Para una coincidencia de sufijo, en la que la cadena termina con un patrón dado, coloque el símbolo % al principio del patrón. Por ejemplo, para buscar todos los productos cuyo name termine en "XYZ".

filter = 'name LIKE "%XYZ"'

Esto coincidirá con cualquier producto cuyo nombre termine en "XYZ", como "ProductXYZ", "SampleXYZ", etc.

Coincidencia infija (contiene)

Para realizar una coincidencia infija, en la que el patrón puede aparecer en cualquier lugar de la cadena, puede colocar el símbolo % tanto al principio como al final del patrón. Por ejemplo, para buscar todos los productos cuyo name contenga la palabra "Pro".

filter = 'name LIKE "%Pro%"'

Esto coincidirá con cualquier producto cuyo nombre contenga la subcadena "Pro", como "Product", "ProLine" o "SuperPro".

Operadores aritméticos

Los operadores aritméticos le permiten crear condiciones basadas en cálculos que implican campos numéricos.

Operadores aritméticos admitidos.

  • + (Suma)

  • - (Resta)

  • * (Multiplicación)

  • / (División)

  • % (Módulo)

  • ** (Exponenciación)

Ejemplo 1: Utilización de la suma (+)

Para encontrar entidades en las que el precio total es la suma de base_price y tax.

filter = 'total == base_price + tax'

Ejemplo 2: Sustracción (-)

Para encontrar entidades donde quantity es mayor que 50 y quantity_sold es menor que 30.

filter = 'quantity - quantity_sold > 50'

Ejemplo 3: Multiplicación (*)

Para encontrar entidades donde price es mayor que 100 y quantity es mayor que 10, multiplicado.

filter = 'price * quantity > 1000'

Ejemplo 4: Uso de la división (/)

Para encontrar productos donde total_price dividido por quantity es menor que 50.

filter = 'total_price / quantity < 50'

Ejemplo 5: Uso del módulo (%)

Para encontrar entidades donde id es un número par (es decir, divisible por 2).

filter = 'id % 2 == 0'

Ejemplo 6: Uso de la exponenciación (**)

Para encontrar entidades donde price elevado a la potencia de 2 es mayor que 1000.

filter = 'price ** 2 > 1000'

Operadores lógicos

Los operadores lógicos se utilizan para combinar varias condiciones en una expresión de filtro más compleja. Entre ellos se incluyen AND, OR y NOT.

Operadores lógicos admitidos.

  • AND: Combina varias condiciones que deben ser todas verdaderas.

  • OR: Combina condiciones donde al menos una debe ser verdadera.

  • NOT: Niega una condición.

Ejemplo 1: Uso de AND para combinar condiciones

Para encontrar todos los productos donde price es mayor que 100 y stock es mayor que 50.

filter = 'price > 100 AND stock > 50'

Ejemplo 2: Uso de OR para combinar condiciones

Para encontrar todos los productos donde color es "rojo" o "azul".

filter = 'color == "red" OR color == "blue"'

Ejemplo 3: Uso de NOT para excluir una condición

Para encontrar todos los productos donde color no es "verde".

filter = 'NOT color == "green"'

Consejos sobre el uso de operadores básicos con campos JSON y ARRAY

Aunque los operadores básicos de Milvus son versátiles y pueden aplicarse a campos escalares, también pueden utilizarse eficazmente con las claves y los índices de los campos JSON y ARRAY.

Por ejemplo, si tiene un campo product que contiene múltiples claves como price, model, y tags, siempre haga referencia a la clave directamente.

filter = 'product["price"] > 1000'

Para buscar registros en los que la primera temperatura de una matriz de temperaturas registradas supere un valor determinado, utilice.

filter = 'history_temperatures[0] > 30'

Conclusión

Milvus ofrece una serie de operadores básicos que le proporcionan flexibilidad a la hora de filtrar y consultar sus datos. Combinando operadores de comparación, de rango, aritméticos y lógicos, puede crear potentes expresiones de filtrado para acotar los resultados de búsqueda y recuperar los datos que necesita de forma eficaz.

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
Feedback

¿Fue útil esta página?