MongoDB:如何从数组中获取特定元素?
我在文档中有如下对象:MongoDB:如何从数组中获取特定元素?,mongodb,mongodb-query,Mongodb,Mongodb Query,我在文档中有如下对象: 我只想从'transactions'数组中获取其内部字段'isMatched'==false的元素 我试过: 但是我得到了所有的数组元素: 什么是合适的查询?您可以通过聚合实现这一点$filter有助于消除不需要的对象 db.collection.aggregate([ { $project: { company: 1, transaction: { $filter: { input: &qu
我只想从'transactions'数组中获取其内部字段'isMatched'==false的元素
我试过:
但是我得到了所有的数组元素:
什么是合适的查询?您可以通过聚合实现这一点
$filter
有助于消除不需要的对象
db.collection.aggregate([
{
$project: {
company: 1,
transaction: {
$filter: {
input: "$transaction",
cond: {
$eq: [
"$$this.isMatched",
false
]
}
}
}
}
}
])
工作
db.collection.aggregate([
{
$project: {
company: 1,
transaction: {
$filter: {
input: "$transaction",
cond: {
$eq: [
"$$this.isMatched",
false
]
}
}
}
}
}
])