Mongoosejsでマルチフィールドインデックスを作成する方法についてのドキュメントを見つけようとしていますが、役に立ちません。特に、インデックスを付けて一意にする必要がある2つのフィールドがあります。2つのフィールドにインデックスを付けるマングーススキーマの例は何ですか?
回答:
1
上昇している、-1
下降しているでしょう。
index
。
1
-1
インデックスフィールドに昇順または降順のインデックスキーを指定します。私が見つかりましたドキュメントhttp://mongodb.github.io/node-mongodb-native/2.1/tutorials/create-indexes/
複合インデックスを作成するときは、スキーマレベルでインデックスを定義する必要があります。
animalSchema.index({ name: 1, type: -1 });
ちなみに、受け入れられた答えは間違っています。https://stackoverflow.com/a/52553550/129300に従って、フィールド名を一重引用符で囲む必要があります。
mySchema.index({'field1': 1, 'field2': 1}, {unique: true});
ハッピーデイ!
field1
およびfield2
は有効な識別子です。field1.foo
たとえば、そうではありません。
Following command can be used to create compound index for nested json:
db.ACCOUNT_collection.createIndex({"account.id":1,"account.customerId":1},{unique:1})
Mongo json structure is like :
{"_id":"648738"
"account": {
"id": "123",
"customerId": 7879,
"name": "test"
..
..
}
}
サンプルデータでテストしましたが、期待どおりに完全に機能しています。