粗略的記錄一下:
以下是給scheduleTaskName和isActive兩個字段加唯一索引
db.scheduleTask.createIndex({scheduleTaskName: 1, isActive: 1},{unique: true});
db.scheduleTask.getIndexes()
# 查詢結果
[
{
"v" : NumberInt(2),
"key" : {
"_id" : NumberInt(1)
},
"name" : "_id_",
"ns" : "ttma.scheduleTask"
},
{
"v" : NumberInt(2),
"unique" : true,
"key" : {
"scheduleTaskName" : NumberInt(1),
"isActive" : NumberInt(1)
},
"name" : "scheduleTaskName_1_isActive_1",
"ns" : "ttma.scheduleTask"
}
]
2020.04.15 更新
控制檯添加索引:(1代表升序, -1代表降序, 具體需要哪個可以結合你實際查詢數據的情況)
# 查看這個collection的所有索引
db.collectionName.getIndexes()
# 刪除某個索引
db.collectionName.dropIndex({fieldName: 1})
# 添加某個索引
db.collectionName.createIndex({fieldName: 1})
# db.collection.ensureIndex() 這個方法也可以,但是 3.0.0 版後已移除:
# db.collection.ensureIndex() is now an alias for db.collection.createIndex().