Docs Menu
Docs Home
/ /
Vistas
/ / /

Crea una vista con la intercalación por defecto

Laintercalación le permite especificar reglas específicas del idioma para la comparación de cadenas, como reglas para mayúsculas y minúsculas y tildes.

Esta página explica cómo especificar una intercalación predeterminada para una vista.

Crear una places Colección con los siguientes documentos:

db.places.insertMany([
{ _id: 1, category: "café" },
{ _id: 2, category: "cafe" },
{ _id: 3, category: "cafE" }
])

La siguiente operación crea una vista, especificando la intercalación a nivel de vista:

db.createView(
"placesView",
"places",
[ { $project: { category: 1 } } ],
{ collation: { locale: "fr", strength: 1 } }
)

La siguiente operación utiliza la intercalación de la vista:

db.placesView.countDocuments( { category: "cafe" } )

La operación devuelve 3.

Nota

Comportamiento de la intercalación

  • Puede especificar una intercalación por defecto para una vista en el momento que la crea. Si no se especifica ninguna intercalación, la intercalación por defecto de la vista es la intercalación de comparación binaria "simple". Es decir, la vista no hereda la intercalación por defecto de la colección.

  • Las comparaciones de string en la vista utilizan la intercalación por defecto de la vista. Una operación que intente cambiar o sobrescribir la intercalación por defecto de una vista fallará con un error.

  • Si crea una vista a partir de otra vista, no puede especificar una intercalación que difiera de la intercalación de la vista de origen.

  • Si realiza una agregación que implique varias vistas, como con $lookup o $graphLookup, las vistas deben tener la misma intercalación.

Volver

Unir colecciones