Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb Mongo稀疏索引无法创建_Mongodb_Indexing - Fatal编程技术网

Mongodb Mongo稀疏索引无法创建

Mongodb Mongo稀疏索引无法创建,mongodb,indexing,Mongodb,Indexing,我正在尝试创建一个稀疏唯一索引,以下是我的数据: rs-ds119302:PRIMARY> db.trees.find({id_name:{$exists:true}, item_type:{$exists:true}}, {id_name: 1, item_type: 1}) { "_id" : ObjectId("59417bf6748a2469ab093183"), "item_type" : 1, "id_name" : "AA" } { "_id" : ObjectId("594

我正在尝试创建一个稀疏唯一索引,以下是我的数据:

rs-ds119302:PRIMARY> db.trees.find({id_name:{$exists:true}, item_type:{$exists:true}}, {id_name: 1, item_type: 1})
{ "_id" : ObjectId("59417bf6748a2469ab093183"), "item_type" : 1, "id_name" : "AA" }
{ "_id" : ObjectId("59417bd7bc99346962fd289e"), "item_type" : 1, "id_name" : "BB" }
{ "_id" : ObjectId("59417bb4587803690be313bb"), "item_type" : 1, "id_name" : "CC" }
{ "_id" : ObjectId("599b6ff11e4d88264658e497"), "id_name" : "DD", "item_type" : 1 }
{ "_id" : ObjectId("599f3fa8442b9d46e2340389"), "id_name" : "EE", "item_type" : 1 }
索引创建命令:

db.trees.createIndex( { id_name: 1, item_type: -1 }, { sparse: true, unique: true } )
错误:

{
    "ok" : 0,
    "errmsg" : "E11000 duplicate key error index: ccp.trees.$id_name_1_item_type_-1 dup key: { : null, : 3 }",
    "code" : 11000,
    "codeName" : "DuplicateKey"
}
有什么想法吗? 谢谢

请查看:

仅包含升序/降序索引的稀疏复合索引 只要文档至少包含 一把钥匙

因此,查找索引文档的筛选器不正确,因为稀疏索引将索引至少具有两个属性集之一的所有文档。您将需要运行以下查询,该查询将显示重复的密钥

db.trees.find({$or: [ { "id_name": { $exists: true } }, { "item_type": { $exists: true } } ] })