其实我们经常要知道某个collection里面的某个key包含了哪些值,那么我们可以用如下的语法进行查询。
db.collection('your_collection').distinct('key', function(err, results) {
//your code of results
});
实际例子1:
router.get('/all_bl/get', function(req, res) {
db.collection('pr_mapping_release').distinct('bl', function(err, results) {
if (err) console.log(err);
else {
console.log("=========");
console.log(results);
res.send({results: results});
}
});
});
其实,我们在使用的时候还可以添加query_filterExpr用法如下:
var filterExpr = {"$and": [{status: {"$nin": ["Closed","Correction Not Needed"]}}]};
db.collection('your_collection').distinct('key', filterExpr , function(err, results) {
//your code of results
});
实际例子2:
var PR_API_URL = 'https://pronto.int.net.nokia.com/prontoapi/rest/api/latest/problemReport/';
router.get('/prs_not_close/get', function(req, res, next) {
var filterExpr = {"$and": [{status: {"$nin": CLOSE_LIST}}]};
db.collection('pci_issue').distinct('bugid', filterExpr, function (err, results) {
if(err) { console.log(err);}
else {
console.log("daata"+"%j", results);
res.send({results:results});
}
});
});