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.
$jsonSchema
Nouveau depuis la version 4.0.
Non pris en charge par le cluster Elastic.
L'$jsonSchemaopérateur dans Amazon DocumentDB est utilisé pour filtrer les documents en fonction d'un schéma JSON spécifié. Cet opérateur vous permet d'interroger des documents qui correspondent à un schéma JSON particulier, en veillant à ce que les documents récupérés respectent les exigences spécifiques en matière de structure et de type de données.
À l'aide de l'opérateur de requête d'$jsonSchemaévaluation dans le cadre de la création d'une collection, vous pouvez valider le schéma des documents insérés dans la collection. Voir Utilisation de la validation du schéma JSON pour plus d'informations.
Paramètres
-
required(tableau) : Spécifie les champs obligatoires dans le document. -
properties(objet) : définit le type de données et les autres contraintes pour chaque champ du document.
Exemple (MongoDB Shell)
L'exemple suivant illustre l'utilisation de l'$jsonSchemaopérateur pour filtrer la employees collection afin de récupérer uniquement les documents contenant les name age champs, et et le employeeId champ est de typestring. employeeId
Création d'exemples de documents
db.employees.insertMany([ { "name": { "firstName": "Carol", "lastName": "Smith" }, "employeeId": "1" }, { "name": { "firstName": "Emily", "lastName": "Brown" }, "employeeId": "2", "age": 25 }, { "name": { "firstName": "William", "lastName": "Taylor" }, "employeeId": 3, "age": 24 }, { "name": { "firstName": "Jane", "lastName": "Doe" }, "employeeId": "4" } ]);
Exemple de requête
db.employees.aggregate([ { $match: { $jsonSchema: { required: ["name", "employeeId", "age"], properties: { "employeeId": { "bsonType": "string" } } } }} ]);
Sortie
{ "_id" : ObjectId("6908e8b61f77fc26b2ecd26f"), "name" : { "firstName" : "Emily", "lastName" : "Brown" }, "employeeId" : "2", "age" : 25 }
Exemples de code
Pour afficher un exemple de code d'utilisation de la $jsonSchema commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :