Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
$exists
L'$existsopérateur permet de vérifier si un champ existe ou non dans un document. $existsparticulièrement utile lorsque vous travaillez avec des index épars dans Amazon DocumentDB, où le champ indexé peut ne pas être présent dans tous les documents.
Pour utiliser un index fragmenté que vous avez créée dans une requête, vous devez utiliser la clause $exists sur les champs qui couvrent l'index. Si vous omettez$exists, Amazon DocumentDB n'utilisera pas l'index clairsemé pour la requête.
Paramètres
-
field: nom du champ dont l'existence doit être vérifiée. -
value: valeur booléenne (trueoufalse) qui indique si le champ doit exister (true) ou ne pas exister (false) dans les documents correspondants.
Exemple (MongoDB Shell)
L'exemple suivant illustre l'utilisation de l'$existsopérateur avec un index clairsemé sur le special_diets champ de la food collection.
Création d'exemples de documents
db.food.insertMany([ { _id: 1, name: "Apple", special_diets: ["vegetarian", "gluten-free"] }, { _id: 2, name: "Broccoli" }, { _id: 3, name: "Chicken", special_diets: ["dairy-free"] } ]);
Créez un index clairsemé dans le champ `special_diets`
db.food.createIndex({ "special_diets": 1 }, { sparse: true, name: "special_diets_sparse_asc" });
Exemple de requête
db.food.find({ "special_diets": { $exists: true } });
Sortie
[
{ "_id" : 1, "name" : "Apple", "special_diets" : [ "vegetarian", "gluten-free" ] },
{ "_id" : 3, "name" : "Chicken", "special_diets" : [ "dairy-free" ] }
]
Exemples de code
Pour afficher un exemple de code relatif à l'utilisation de la $exists commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :