我在我的Auction系列上尝试此类查询,目标是返回所有文档:item == 2770
和dump == ObjectId("5104f03a46ab64d404000000") or ObjectId("51067f4946ab644003000000") or ObjectId("5106924e46ab64c81c000000")
。
{
item: 2770,
dump: {
$all: [
ObjectId("5104f03a46ab64d404000000"),
ObjectId("51067f4946ab644003000000"),
ObjectId("5106924e46ab64c81c000000")
]
}
}
此查询不会返回任何内容,但是这个(注意我使用$ all运算符中包含的转储),返回一个文档列表。我是否忽略了$ all运算符行为?
{
item: 2770,
dump: ObjectId("5106924e46ab64c81c000000")
}
以下是我的拍卖系列中的文档示例
{
_id: ObjectId("5106924e46ab64c81c000237"),
auc: 1560105766,
item: 2770,
owner: "Ozrael",
bid: 450000,
buyout: 450000,
quantity: 20,
timeLeft: "VERY_LONG",
dump: ObjectId("5106924e46ab64c81c000000"),
faction: "horde",
bidPricePerUnit: 22500,
buyoutPricePerUnit: 22500
}
答案 0 :(得分:2)
答案 1 :(得分:0)
当您使用$all
时,结果集的每个文档都应该包含所有提到的值。示例中的文档应具有以下结构:
{
_id: ObjectId("5106924e46ab64c81c000237"),
auc: 1560105766,
item: 2770,
owner: "Ozrael",
bid: 450000,
buyout: 450000,
quantity: 20,
timeLeft: "VERY_LONG",
dump: [
ObjectId("5104f03a46ab64d404000000"),
ObjectId("51067f4946ab644003000000"),
ObjectId("5106924e46ab64c81c000000")
],
faction: "horde",
bidPricePerUnit: 22500,
buyoutPricePerUnit: 22500
}