2

mongodb mapReduce から生成されたコレクション内の特定のフィールドを照会するにはどうすればよいですか?
出力コレクションで姓フィールドのみを取得するには、何を入力すればよいですか?

結果は次のようになります:
{ "lastname" : "Doe" }

> version()
バージョン: 2.2.2

> db.test.save( { 最初: "John"、最後: "Doe" } )

>db.test.find()
{ "_id" : ObjectId("50bc001a8e97247957c6000f"), "first" : "John", "last" : "Doe" }

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

{ "result" : "output", "timeMillis" : 6, "counts" : { "input" : 1, "エミット」: 1、「リデュース」: 0、「出力」: 1 }、「OK」: 1、}

>db.output.find()
{ "_id" : ObjectId("50bc001a8e97247957c6000f"), "値" : { "ファーストネーム" : "ジョン", "ラストネーム" : "ドウ" } }

>db.output.find( {}, {_id: 0} )
{ "値" : { "名" : "ジョン", "姓" : "ドウ" } }

4

1 に答える 1

0

findmap-reduceを作り直さずに、最も近いものは次のようになります。

db.output.find( {}, {_id:0, 'value.lastname':1} )
于 2012-12-03T02:45:39.300 に答える