所以这是我的情况:
Template.timeTrackerTemplate.onCreated(function () {
this.trackerId = null;
});
Template.timeTrackerTemplate.helpers({
showCounterState: function() {
const trackerId = Template.instance().trackerId;
return trackerId ? TimeTracker.findOne({ _id: trackerId }).state : '';
}
});
Template.timeTrackerTemplate.events({
'click .start-counting': function(e, instance) {
instance.trackerId = TimeTracker.insert({ state: 0 });
Meteor.call('updateCounterState', instance.trackerId);
}
});
我正在尝试构建一个查询,该查询将返回给定____________________________________________
| idnumber | name | sectiongroup |
--------------------------------------------
| 123 | Joe | one |
| 123 | Barry | two |
| 1234 | Laura | one |
| 1234 | LauraCopyCat | one |
--------------------------------------------
中的任何唯一(即 - COUNT(idnumber) = 1
)ID号。因此,如果您在第一组的第一组中,并且您的sectiongroup中没有其他人拥有与您相同的ID号,那么我想要您的号码。如果第二组中的某个人碰巧有相同的idnumer,那没关系,我仍然想要你的号码。
例如,Barry和Joe拥有相同的ID号,但它们位于不同的sectiongroups中,所以我想返回它们的idnubers。但是,Laura和LauraCopyCat有相同的分组,所以我不希望他们的idnumber被返回。到目前为止,我有以下内容:
sectiongroup
有没有办法将sectiongroup添加到COUNT()= 1条件?
答案 0 :(得分:1)
只需使用COUNT(*)
即可避免混淆。这将计算特定组中的记录数。请记住,一个组由GROUP BY
语句中指定的字段中的唯一值组合组成。
SELECT idnumber
FROM namestable
GROUP BY idnumber, sectiongroup
HAVING COUNT(*) = 1
请注意,如果您有共享ID但具有不同子组的记录,则会导致重复的idnumbers。要删除重复内容,只需将SELECT
更改为SELECT DISTINCT
即可。