🚀 Essayez Zilliz Cloud, la version entièrement gérée de Milvus, gratuitement—découvrez des performances 10x plus rapides ! Essayez maintenant>>

milvus-logo
LFAI
Home
  • Guide de l'utilisateur

Opérateurs JSON

Milvus prend en charge des opérateurs avancés pour l'interrogation et le filtrage des champs JSON, ce qui les rend parfaits pour la gestion de données complexes et structurées. Ces opérateurs permettent d'effectuer des requêtes très efficaces dans les documents JSON, ce qui permet d'extraire des entités en fonction d'éléments, de valeurs ou de conditions spécifiques dans les champs JSON. Cette section vous guidera dans l'utilisation des opérateurs spécifiques à JSON dans Milvus, en fournissant des exemples pratiques pour illustrer leur fonctionnalité.

Les champs JSON ne peuvent pas traiter les structures complexes imbriquées et traitent toutes les structures imbriquées comme des chaînes simples. Par conséquent, lorsque vous travaillez avec des champs JSON, il est conseillé d'éviter une imbrication trop profonde et de veiller à ce que vos structures de données soient aussi plates que possible pour des performances optimales.

Opérateurs JSON disponibles

Milvus fournit plusieurs opérateurs JSON puissants qui permettent de filtrer et d'interroger les données JSON.

Explorons ces opérateurs à l'aide d'exemples pour voir comment ils peuvent être appliqués dans des scénarios réels.

JSON_CONTAINS

L'opérateur json_contains vérifie si un élément ou un sous-réseau spécifique existe dans un champ JSON. Il est utile lorsque vous voulez vous assurer qu'un tableau ou un objet JSON contient une valeur particulière.

Exemple

Imaginez que vous ayez une collection de produits, chacun avec un champ tags qui contient un tableau JSON de chaînes de caractères, comme ["electronics", "sale", "new"]. Vous souhaitez filtrer les produits qui ont la balise "sale".

# JSON data: {"tags": ["electronics", "sale", "new"]}
filter = 'json_contains(tags, "sale")'

Dans cet exemple, Milvus renvoie tous les produits dont le champ tags contient l'élément "sale".

JSON_CONTAINS_ALL

L'opérateur json_contains_all garantit que tous les éléments d'une expression JSON spécifiée sont présents dans le champ cible. Il est particulièrement utile lorsque vous devez faire correspondre plusieurs valeurs dans un tableau JSON.

Exemple

Si vous voulez trouver tous les produits qui ont les étiquettes "electronics", "sale", et "new", vous pouvez utiliser l'opérateur json_contains_all.

# JSON data: {"tags": ["electronics", "sale", "new", "discount"]}
filter = 'json_contains_all(tags, ["electronics", "sale", "new"])'

Cette requête renverra tous les produits dont le tableau tags contient les trois éléments spécifiés : "electronics", "sale", et "new".

JSON_COTAINS_ANY

L'opérateur json_contains_any filtre les entités dont au moins un membre de l'expression JSON existe dans le champ. Cet opérateur est utile lorsque vous souhaitez faire correspondre des entités sur la base de l'une des valeurs possibles.

Exemple

Supposons que vous souhaitiez filtrer les produits qui ont au moins une des balises "electronics", "sale", ou "new". Vous pouvez utiliser l'opérateur json_contains_any pour y parvenir.

# JSON data: {"tags": ["electronics", "sale", "new"]}
filter = 'json_contains_any(tags, ["electronics", "new", "clearance"])'

Dans ce cas, Milvus renverra tous les produits qui ont au moins une des balises de la liste ["electronics", "new", "clearance"]. Même si un produit n'a qu'une seule de ces balises, il sera inclus dans le résultat.

Try Managed Milvus for Free

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

Get Started
Feedback

Cette page a-t - elle été utile ?