MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie kann ich Sortierungsoptionen anzeigen oder ändern, die für eine MongoDB-Sammlung festgelegt wurden?

Ab MongoDB 3.6 können die standardmäßigen Sortierungsoptionen nur angegeben werden, wenn eine Sammlung erstellt wird. Es gibt keine Unterstützung für das Ändern der standardmäßigen Sortierungsoptionen.

Wenn Sie jedoch andere Sortierungsoptionen als die Standardeinstellungen verwenden möchten, können Sie eine collation angeben Dokument für Operationen, die Sortierung unterstützen , wie zum Beispiel find() und aggregate() .

Es gibt mehrere Ansätze.

Der db.getCollectionInfos() Der Shell-Helfer zeigt zusätzliche Sammlungsinformationen an, z. B. Kollatierungsvorgaben:

db.getCollectionInfos({name:'words'})[0].options.collation
{
  "locale": "es",
  "caseLevel": false,
  "caseFirst": "off",
  "strength": 2,
  "numericOrdering": false,
  "alternate": "non-ignorable",
  "maxVariable": "punct",
  "normalization": false,
  "backwards": false,
  "version": "57.1"
}

Sie können auch die vom Abfrageplaner verwendeten Standardsortieroptionen überprüfen:

> db.words.find().explain().queryPlanner.collation
{
  "locale": "es",
  "caseLevel": false,
  "caseFirst": "off",
  "strength": 2,
  "numericOrdering": false,
  "alternate": "non-ignorable",
  "maxVariable": "punct",
  "normalization": false,
  "backwards": false,
  "version": "57.1"
}