我一直在寻找一些例子,但它们似乎都没有用。我试图仅返回来自另一个字段的条件为真的一个字段的唯一值。这是我的收藏品的样子:
记录
{
_id: "XuZcMm2MGCr7CshB5"<br>
clientAvailability: "Direct Solutions<br>
"enhancementId: "D08F817L"<br>
enhancementName: "Allow TN Transfer"<br>
follow: false<br>
impactedProducts: Array[4]<br>
internal: false<br>
like: false<br>
releaseDate: Wed Aug 27 2014 00:00:00 GMT-0500 (CDT)<br>
requestingMso: "Internal"<br>
requestingProduct: "Voice Services"<br>
required: false<br>
}
我尝试将查询限制为只有&#39; releaseDate&#39;是在2014年,并返回&#39; clientAvailability&#39;的所有独特价值。对于那些记录。为什么这不起作用?我是一个菜鸟,所以我确定我错过了一些简单的东西。提前谢谢!
return Records.distinct('clientAvailability', { $and: [{releaseDate: {$gte: new Date('Jan 1, 2014'), $lte: new Date('Nov 26,2014')}}]}
);
答案 0 :(得分:1)
distinct
是一个异步函数,因此您需要提供一个回调来接收结果。您目前只是返回它所代表的Query
对象。您也不需要使用$and
运算符。
Records.distinct('clientAvailability',
{releaseDate: {$gte: new Date('Jan 1, 2014'), $lte: new Date('Nov 26,2014')}},
function (err, result) {
// result contains the array of unique values
}
);