主要集合是零售商,其中包含商店阵列.每个商店都包含一系列优惠(您可以在这家商店购买).这个提供的数组有一系列的大小.(见下面的例子)
现在我尝试找到所有尺寸可用的优惠L.
{
"_id" : ObjectId("56f277b1279871c20b8b4567"),
"stores" : [
{
"_id" : ObjectId("56f277b5279871c20b8b4783"),
"offers" : [
{
"_id" : ObjectId("56f277b1279871c20b8b4567"),
"size": [
"XS",
"S",
"M"
]
},
{
"_id" : ObjectId("56f277b1279871c20b8b4567"),
"size": [
"S",
"L",
"XL"
]
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
我试过这个查询: db.getCollection('retailers').find({'stores.offers.size': 'L'})
我期待一些像这样的输出:
{
"_id" : ObjectId("56f277b1279871c20b8b4567"),
"stores" : [
{
"_id" : ObjectId("56f277b5279871c20b8b4783"),
"offers" : [
{
"_id" : ObjectId("56f277b1279871c20b8b4567"),
"size": [
"S",
"L",
"XL"
]
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
但我的查询输出还包含与sizeXS,X和M 的不匹配的报价.
我如何强制MongoDB只返回与我的查询匹配的商品? …
正如标题所暗示的那样,我正在寻找一种在翡翠中成型的方法.
我有一个看起来像这样的变量:9.039444444444445.
是否可以将此数字输出为:9?
提前感谢所有支持我的人.