> **$match中使用的文档筛选语法和读取文档时的筛选语法相同** ~~~ db.accounts.aggregate([ { $match:{ $or:[ {balacne:{$gt:40,$lt:80}}, {"name.lastName":"yang"} ] }},{ $project:{ _id:0 } } ]) ~~~ ### **返回案例** ``` { "name" : { "firstName" : "bob", "lastName" : "yang" }, "balance" : 20 } ``` $match 是一个很常用的聚合阶段 应该尽量在聚合管道的开始阶段应用$matich 这样可以减少后续阶段中需要处理的文档数量,优化聚合操作的性能