Синтаксис составного индекса в mongodb

Быстрый вопрос о том, как определить составной индекс

согласно определению я могу создать составной индекс, как показано ниже, и это создаст составной индекс для student_id а также class_id,

db.students.createIndex({"student_id":1,"class_id":1});

Однако, что произойдет, если я дам что-то подобное

db.students.createIndex({"student_id,class_id":1})

синтаксис действителен, и он принимает индекс, но я не уверен, как индекс будет создан.

Какие-нибудь мысли?

1 ответ

Решение

Ну, если вы сделаете это, а затем просто запустить db.students.getIndexes() вы увидите, что индекс создан для поля с именем student_id,class_id - это именно то, что вы просили, то есть не составной индекс, а индекс поля с запятой в его имени.

{
    "v" : 1,
    "key" : {
        "student_id,class_id" : 1.0
    },
    "name" : "student_id,class_id_1",
    "ns" : "tmp.students"
}
Другие вопросы по тегам