在 MongoDB 中將唯一索引變為稀疏唯一索引?
對於稀疏索引,請使用 sparse:true。以下是建立索引的查詢 −
> db.demo229.ensureIndex({"ClientName":1}, {unique: true}); { "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }
以下是顯示索引的查詢 −
> db.demo229.getIndexes();
將生成以下輸出 −
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "test.demo229" }, { "v" : 2, "unique" : true, "key" : { "ClientName" : 1 }, "name" : "ClientName_1", "ns" : "test.demo229" } ]
現在讓我們刪除一個索引,並將 MongoDB 中的唯一索引更改為稀疏唯一索引 −
> db.demo229.dropIndex("ClientName_1"); { "nIndexesWas" : 2, "ok" : 1 } > db.demo229.ensureIndex({"ClientName":1}, {unique: true, sparse:true}); { "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }
以下是顯示索引的查詢 −
> db.demo229.getIndexes();
將生成以下輸出 −
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "test.demo229" }, { "v" : 2, "unique" : true, "key" : { "ClientName" : 1 }, "name" : "ClientName_1", "ns" : "test.demo229", "sparse" : true } ]
廣告