Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
$jsonSchema
Novità dalla versione 4.0.
Non supportato dal cluster Elastic.
L'$jsonSchemaoperatore in Amazon DocumentDB viene utilizzato per filtrare i documenti in base a uno schema JSON specificato. Questo operatore consente di interrogare documenti che corrispondono a un particolare schema JSON, assicurando che i documenti recuperati rispettino requisiti strutturali e di tipo di dati specifici.
Utilizzando l'operatore di interrogazione di $jsonSchema valutazione come parte della creazione di una raccolta, è possibile convalidare lo schema dei documenti inseriti nella raccolta. Utilizzo della convalida dello schema JSONPer ulteriori informazioni, vedere.
Parametri
-
required(array): specifica i campi obbligatori nel documento. -
properties(oggetto): Definisce il tipo di dati e altri vincoli per ogni campo del documento.
Esempio (MongoDB Shell)
L'esempio seguente dimostra l'uso dell'$jsonSchemaoperatore per filtrare la employees raccolta in modo da recuperare solo i documenti che contengono age i campi employeeId e e che il name employeeId campo è di tipo. string
Crea documenti di esempio
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" } ]);
Esempio di interrogazione
db.employees.aggregate([ { $match: { $jsonSchema: { required: ["name", "employeeId", "age"], properties: { "employeeId": { "bsonType": "string" } } } }} ]);
Output
{ "_id" : ObjectId("6908e8b61f77fc26b2ecd26f"), "name" : { "firstName" : "Emily", "lastName" : "Brown" }, "employeeId" : "2", "age" : 25 }
Esempi di codice
Per visualizzare un esempio di codice per l'utilizzo del $jsonSchema comando, scegliete la scheda relativa alla lingua che desiderate utilizzare: