我想做点什么
select campaign_id,campaign_name,count(subscriber_id),count(distinct subscriber_id)
group by campaign_id,campaign_name from campaigns;
Run Code Online (Sandbox Code Playgroud)
此查询给出除count之外的结果(distinct subscriber_id)
db.campaigns.aggregate([
{$match: {subscriber_id: {$ne: null}}},
{$group: {
_id: {campaign_id: "$campaign_id",campaign_name: "$campaign_name"},
count: {$sum: 1}
}}
])
Run Code Online (Sandbox Code Playgroud)
以下查询给出除count(subscriber_id)之外的结果
db.campaigns_logs.aggregate([
{$match : {subscriber_id: {$ne: null}}},
{$group : { _id: {campaign_id: "$campaign_id",campaign_name: "$campaign_name",subscriber_id: "$subscriber_id"}}},
{$group : { _id: {campaign_id: "$campaign_id",campaign_name: "$campaign_name"},
count: {$sum: 1}
}}
])
Run Code Online (Sandbox Code Playgroud)
但我希望count(subscriber_id),count(distinct subscriber_id)在同一个结果中