MongoDB le proporciona una función interesante que se conoce como documento incrustado o anidado . El documento incrustado o los documentos anidados son aquellos tipos de documentos que contienen un documento dentro de otro documento. O en otras palabras, cuando una colección tiene un documento, este documento contiene otro documento, otro documento contiene otro subdocumento, y así sucesivamente, este tipo de documentos se conocen como documentos incrustados/anidados.
Notas –
- En MongoDB, solo puede anidar documentos hasta 100 niveles.
- El tamaño total del documento no debe exceder los 16 MB.
Creación de documentos incrustados:
En MongoDB, puede incrustar fácilmente un documento dentro de otro documento. Como sabemos, en el shell de mongo, los documentos se representan mediante llaves ({}) y dentro de estas llaves tenemos pares de valor de campo. Ahora, dentro de estos campos, podemos incrustar otro documento usando llaves {} y este documento puede contener pares de campo-valor u otro subdocumento.
Sintaxis:
{ .... field: {field1: value1, field2: value2} .... }
Analicemos este concepto con la ayuda de los ejemplos dados:
Ejemplo 1:
Supongamos que tenemos una base de datos llamada ‘GeeksforGeeks’. Ahora esta base de datos tiene una colección llamada ‘Cursos’ y esta colección contiene un documento. Dentro de este documento, tenemos un campo llamado ‘nombre’ que contiene otro documento y este documento contiene tres campos (es decir, primero, medio, último) con sus valores.
Ejemplo 2:
Nuevamente, estamos tomando la base de datos GeeksforGeeks. Dentro de esta base de datos, ya tenemos una colección llamada ‘Cursos’, ahora agregamos otro documento en esta colección, que contiene los detalles del estudiante que selecciona cursos pagos. Dentro de este documento, tenemos un campo llamado ‘courseDetails’. Este campo contiene un documento y este documento contiene algunos pares de valor de campo y un subdocumento que contiene los detalles de pago.
Entonces, en general, la colección de Cursos contiene dos documentos y estos documentos contienen documentos anidados.
Publicación traducida automáticamente
Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA