2017-05-23 7 views
0

で見つける+個別のための良い代替は、私は特定の要素を持っている文書を出力し、クエリを作成しようとしているが、また、唯一例えば、別のユニークな要素を持っていますどのようなものです:マングース

Temp.find({ UId: UserID }).sort({ "created_at" : -1 }).exec(function (err, data) { 
    console.log(data + "  " + err); 
    callback(data); 
    }); 

} ; 戻り値この:

{ 
    "updatedAt": "2017-05-23T18:18:19.000Z", 
    "created_at": "2017-05-23T18:18:19.000Z", 
    "UId": "58f8954c3602b80552b6f1fb", 
    "value": 69, 
    "SerialNumber": "IIOJOIMJ", 
    "_id": "59247cebd96d5406651c791e", 
    "__v": 0 
    }, 
    { 
    "updatedAt": "2017-05-23T16:34:22.000Z", 
    "created_at": "2017-05-23T16:34:22.000Z", 
    "UId": "58f8954c3602b80552b6f1fb", 
    "value": 70, 
    "SerialNumber": "IIOJOIMJ", 
    "_id": "5924648e56628d005ad15f0e", 
    "__v": 0 
    } 

しかし、私は2つの文書の一つだけが返されるように、クエリは唯一、異なる要素を返したいです。
私はこのようにこれを実行しようとした:

Temp.find({ UId: UserID }).sort({ "created_at" : -1 }).distinct('SerialNumber', function (err, data) { 

    console.log(data + "  " + err); 
    callback(data); 
    }); 

が、それは私のアプリがクラッシュします。どのように私はこれを解決するのが最も良い?

ありがとうございます!

EDIT

私は@gagansheraソリューションを見て、それが動作します!それを使ってドキュメントの残りの部分を作成することも可能ですか? distinct機能を使用して

+0

のような個別の列を指定することができます。 –

+0

奇妙なことは、私はそれを求めている間に何も得られないということです。 – Krapton

答えて

1

、あなたは条件だけでなく、エラーメッセージやスタックトレースが有用である可能性が指定するこの

Temp.distinct('SerialNumber', { UId: UserID }) 
+0

完璧!ドキュメントの残りの部分をどのように表示できるかは、おそらく知っていますか? – Krapton