Node.js 查找与mongodb中提供的所有参数匹配的文档
假设我在collection bookDetails中有文档Node.js 查找与mongodb中提供的所有参数匹配的文档,node.js,mongodb,mongoose,mongodb-query,aggregation-framework,Node.js,Mongodb,Mongoose,Mongodb Query,Aggregation Framework,假设我在collection bookDetails中有文档 doc1: {'bookData':{'bookName':'lotr','bookPart':'Part 3'}, 'library_name':'omega','libraryId':12166} doc2: {'bookData':{'bookName':'hp','bookPart':'Part 7'}, 'library_name':'omega','libraryId':12199} doc3: {'bookData'
doc1: {'bookData':{'bookName':'lotr','bookPart':'Part 3'}, 'library_name':'omega','libraryId':12166}
doc2: {'bookData':{'bookName':'hp','bookPart':'Part 7'}, 'library_name':'omega','libraryId':12199}
doc3: {'bookData':{'bookName':'hertu','bookPart':'Part 7'}, 'library_name':'omega','libraryId':9999}
我只想获取与所有字段库名:omega、库id:12199和bookName:hp匹配的文档
为此,我尝试:
wait collection.aggregate([{$match:{library_name:'omega'}},]).exec();{$match:{libraryId:12199}
但我还想匹配书名:“hp”,这样我就可以得到所需的文档
如果有人需要更多信息,请告诉我。演示-
演示- 加总
db.collection.aggregate([
{
$match: {
library_name: "omega",
libraryId: 12199,
"bookData.bookName": "hp"
}
}
])
您可以将所有条件放在单个匹配阶段
{$match:{library_name:'omega',libraryId:12199,bookName:'hp'}}
db.collection.aggregate([
{
$match: {
library_name: "omega",
libraryId: 12199,
"bookData.bookName": "hp"
}
}
])