MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment afficher ou modifier les options de classement définies sur une collection MongoDB ?

Comme dans MongoDB 3.6, les options de classement par défaut ne peuvent être spécifiées qu'à la création d'une collection. La modification des options de classement par défaut n'est pas prise en charge.

Cependant, si vous souhaitez utiliser des options de classement autres que celles par défaut, vous pouvez spécifier un collation document pour opérations qui prennent en charge le classement , comme find() et aggregate() .

Il existe plusieurs approches.

Le db.getCollectionInfos() shell helper affiche des informations supplémentaires sur la collection telles que les valeurs par défaut de classement :

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"
}

Vous pouvez également vérifier les options de classement par défaut utilisées par le planificateur de requête :

> 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"
}