2017-11-10 5 views
0

私は私のコレクション別のフィールドとコレクションは異なる値を取得

Model.find().distinct('TestId', (err, data) => { console.log(data); } 

[1、4、5、6、7、8、9、10、11の別個のテストIDを返すこのクエリを持っています、12、13、14、15、16、17、18、19、20、21、22]

これら全ての値は、同様TestNameを有しており、今もそれらを返したいです。このような何か:

[{テストID:1、テスト名: 'TNAME'} ...]

私はそれをどのように行うことができますか?

答えて

1

出力に他のフィールドを追加サポートしていませんが、簡単なaggregateパイプラインでこれを行うことができdistinctTestIdによってドキュメント

Model.aggregate([{$group: {_id: '$TestId', TestName: {$first: '$TestName'}}}]) 

この意志のグループと第一のdocからTestNameフィールドを含みます各グループで。

+0

distinct test_ids ?? – wrangler

+0

@wrangler申し訳ありませんが、私はあなたが求めているものに従っていません – JohnnyHK

+0

集計についてはよく分かりませんが、上記のクエリは** distinct ** test idsを返しますか? – wrangler

関連する問題