0
我想弄清楚多鍵索引的界限與我有一個例子。帶邊界的多鍵索引mongodb
s1:PRIMARY> db.inventory.find();
{ "_id" : 2, "item" : "ABCx", "ratings" : [ 4, 3 ] }
{ "_id" : 3, "item" : "ABC", "ratings" : [ 2, 9 ] }
{ "_id" : 4, "item" : "XYZ", "ratings" : [ 4, 3 ] }
我一找到這樣
s1:PRIMARY> db.inventory.find({ ratings: { $gte: 5 ,$lte:8} });
輸出:
{ "_id" : 3, "item" : "ABC", "ratings" : [ 2, 9 ] }
按照這裏的文檔和我引用(報價包含比我不同的例子)
查詢會在等級數組中搜索至少一個大於等於3的 以及至少一個小於等於6的元素。 由於單個元素不需要滿足兩個條件,因此MongoDB 不會與範圍並使用[[3,Infinity]]或[ - 無窮大,6]]。 MongoDB不保證它選擇哪個這兩個邊界。
https://docs.mongodb.com/manual/core/multikey-index-bounds/
在此基礎上的文檔,我應該有所有3行作爲我的輸出,而不只是一個排。
有人可以解釋這是怎麼工作的?