Docs Menu

Docs HomeMongoDB Manual

Create a View with Default Collation

Collation allows you to specify language-specific rules for string comparison, such as rules for letter-case and accent marks.

This page explains how to specify a default collation for a view.

Create a places collection with the following documents:

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

The following operation creates a view, specifying collation at the view level:

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

The following operation uses the view's collation:

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

The operation returns 3.

Note

Collation Behavior

  • You can specify a default collation for a view at creation time. If no collation is specified, the view's default collation is the "simple" binary comparison collator. That is, the view does not inherit the collection's default collation.

  • String comparisons on the view use the view's default collation. An operation that attempts to change or override a view's default collation will fail with an error.

  • If creating a view from another view, you cannot specify a collation that differs from the source view's collation.

  • If performing an aggregation that involves multiple views, such as with $lookup or $graphLookup, the views must have the same collation.

←  Use a View to Join Two CollectionsModify a View →
Give Feedback
© 2022 MongoDB, Inc.

About

  • Careers
  • Investor Relations
  • Legal Notices
  • Privacy Notices
  • Security Information
  • Trust Center
© 2022 MongoDB, Inc.