db.createView()Nota
Desambiguación
Esta página analiza las vistas estándar. Para discusión de vistas materializadas on-demand, vea Vistas materializadas on-demand.
Para comprender las diferencias entre los tipos de vistas, consulta Comparación con vistas materializadas on-demand.
Crea una vista como resultado de aplicar la pipeline de agregación especificada a la colección o vista de origen. Las vistas actúan como colecciones de solo lectura y se calculan on-demand durante las operaciones de lectura. Debes crear vistas en la misma base de datos que la colección de origen. MongoDB ejecuta operaciones de lectura en vistas como parte del pipeline de agregación subyacente.
Una definición de vista
pipelineno puede incluir la etapa$outo la$merge. Esta restricción también se aplica a pipelines integradas, como las pipelines usadas en las etapas de$lookupo$facet.
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Nota
Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Sintaxis
db.createView tiene la siguiente sintaxis:
db.createView(<view>, <source>, <pipeline>, <collation>)
El método tiene los siguientes parámetros:
Parameter | Tipo | Descripción | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| string | El nombre de la vista a crear. | ||||||||||
| string | El nombre de la colección de origen o la vista desde la cual se va a crear la vista. El nombre no incluye el nombre de la base de datos y supone la misma base de datos que la vista a crear; no es el namespace completo de la colección ni de la vista. Debe crear vistas en la misma base de datos que la colección de origen. | ||||||||||
| arreglo | Un arreglo que consiste en las etapas del pipeline de agregación. Una definición de vista La definición de la vista es pública; es decir, las operaciones | ||||||||||
| Documento | Opcional. Especifica la intercalación predeterminada para la vista. La intercalación permite a los usuarios especificar reglas propias del lenguaje para la comparación de strings, como reglas para el uso de mayúsculas y minúsculas y marcas de acento. Si el Si no se especifica ninguna intercalación, la intercalación por defecto de la vista es el intercalador de comparación binaria "simple". Si el La opción de intercalación tiene la siguiente sintaxis: Al especificar la intercalación, el campo |
El método db.createView() cubre la siguiente operación de comando create:
db.runCommand( { create: <view>, viewOn: <source>, pipeline: <pipeline>, collation: <collation> } )
Importante
Los nombres de las vistas están incluidos en la salida de la lista de colecciones
Las operaciones que enumeran colecciones, como db.getCollectionInfos() y db.getCollectionNames(), incluyen vistas en sus resultados.
La definición de la vista es pública; es decir, las operaciones db.getCollectionInfos() y explain en la vista incluirán el pipeline que define la vista. Por lo tanto, evite referirse directamente a campos y valores sensibles en las definiciones de vistas.
Ejemplos
Para ver ejemplos de cómo crear una vista, consulte las siguientes páginas:
Comportamiento
Para ver los detalles del comportamiento de las vistas, consulte Comportamiento.