如何在angularJS中使用find select unique,然后对其进行计数,我是平均值堆栈的新手,而且我不知道如何使用distinct方法。
这是我的带有示例数据的表结构:
donation_no:"3124"
donors_name:"Jeremy Adrian De Vera"
date:"12/26/2018"
time:"8:30"
blood_group:"B"
volume:"2"
branch:"Pasig"
我已经使用php这样尝试过了,但是我该怎么做呢?
$query = "SELECT DISTINCT fruits, COUNT(*) as counter FROM my_table WHERE date_tested BETWEEN '$date_from' AND '$date_to' GROUP BY fruits";
这是我的代码,用于从数据库中查找值
api.js
router.get('/blooddonationmanagement', function(req, res) {
Blooddonation.find({},function(err, blooddonations) {
res.json({ success: true, blooddonations: blooddonations });
});
});
blooddonationCtrl.js
angular.module('blooddonationControllers', [])
.controller('blooddonationCtrl', function(Blooddonation,$scope) {
var app = this;
function getBlooddonations() {
Blooddonation.getUsers().then(function(data) {
app.blooddonations = data.data.blooddonations;
});
}
chapters.html
<tr ng-repeat="person in blooddonationmanagement.blooddonations">
<td>{{ person.branch}}</td>
</tr>
我如何才能计算出不同的值,然后从我的数据库中进行计数,我希望这样:
branch count
Pasig 29
Manila 16
Pasay 19
答案 0 :(得分:1)
您应该尝试distinct()
Blooddonation.distinct('branch',... );
答案 1 :(得分:0)
只需在此处阅读文档:https://docs.mongodb.com/manual/reference/method/db.collection.distinct/
您可以使用:
db.collection.distinct()