Как просмотреть или изменить параметры сортировки, установленные для коллекции в MongoDB?
Как вы изменяете параметры, которые мы устанавливаем для коллекции во время создания? И как мы видим уже установленные параметры?
Если мы увидим, например, параметр сортировки, я создаю коллекцию следующим образом:
db.createCollection("words", {collation : {locale :"es", strength : 2}});
И добавить несколько документов:
db.words.insertOne({text : "Résumé"});
db.words.insertOne({text : "Resume"});
db.words.insertOne({text : "résumé"});
db.words.insertOne({text : "resume"});
Как изменить силу сортировки в этой коллекции на 3? как я вижу изменения? Я не вижу соответствующих функций, доступных на db
объект или db.words
объект или в документах!
1 ответ
Как вы изменяете параметры, которые мы устанавливаем для коллекции во время создания?
Как и в MongoDB 3.6, параметры сортировки по умолчанию могут быть указаны только при создании коллекции. Не поддерживается изменение параметров сортировки по умолчанию.
Однако, если вы хотите использовать параметры сортировки, отличные от значений по умолчанию, вы можете указать collation
документ для операций, которые поддерживают сопоставление, таких как find()
а также aggregate()
,
как мы видим уже установленные опции?
Есть несколько подходов.
db.getCollectionInfos()
Помощник оболочки отображает дополнительную информацию о коллекции, такую как параметры сортировки по умолчанию:
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"
}
Вы также можете проверить параметры сортировки по умолчанию, используемые планировщиком запросов:
> 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"
}
Изменить параметры сортировки по умолчанию в настоящее время в разработке: