老实说,我怀疑这是可能的,但只是在这里试一试。
这是DB记录的一个例子
{
type: 'fruit',
name: 'apple',
quantity: 3
}
{
type: 'fruit',
name: 'orange',
quantity: 10
}
{
type: 'vegetable',
name: 'tomato',
quantity: 4
}
{
type: 'meat',
name: 'beef',
quantity: 2
}
然后是查询
{type: { $in: ['fruit', 'vegetable', 'meat']}}
因此,这将返回集合中的所有记录&#39; apple&#39;&#39; orange&#39;,&#39;番茄&#39;牛肉&#39;。< / p>
我想查询水果&#39;蔬菜&#39;肉类&#39;以及'fruit' only but not others
的数量超过5的记录。
所以结果将是
orange, tomato, beef
不确定我的解释是否有意义,但这是一个可能的查询?或者我应该去查询两次? 谢谢你的阅读。
答案 0 :(得分:1)
请尝试:
{
$or: [
{ type: { $in: ['vegetable', 'meat'] } },
{ type: { $in: ['fruit'] }, quantity: { $gt: 5 } }
]
}
我希望有所帮助。