如何查询特定的mongodb mapreduce字段?

时间:2012-12-03 01:39:49

标签: mongodb mapreduce field

如何查询从mongodb mapReduce生成的集合中的特定字段?
我应该输入什么来仅检索输出集合中的姓氏字段?

结果应该是:
{“lastname”:“Doe”}

  

> ()版本
  版本:2.2.2

  > db.test.save({first:“John”,last:“Doe”})

  > db.test.find()
  {“_ id”:ObjectId(“50bc001a8e97247957c6000f”),“first”:“John”,“last”:“Doe”}

  > db.test.mapReduce(
function(){emit(this._id,{firstname:this.first,lastname:this.last})},function(key,value){return null;},{out :{reduce:'output'}})

  {       “结果”:“输出”,       “timeMillis”:6,       “计数”:{           “输入”:1,           “发射”:1,           “减少”:0,           “输出”:1       },       “好的”:1,   }   

  > db.output.find()
  {“_ id”:ObjectId(“50bc001a8e97247957c6000f”),“value”:{“firstname”:“John”,“lastname”:“Doe”}}

  > db.output.find({},{_ id:0})
  {“value”:{“firstname”:“John”,“lastname”:“Doe”}}

1 个答案:

答案 0 :(得分:0)

最接近find而不重新制作map-reduce的地方是:

db.output.find( {}, {_id:0, 'value.lastname':1} )