【问题标题】:How to count unique opens in a period of time in Marketing Cloud?Marketing Cloud中如何计算一段时间内的唯一打开数?
【发布时间】:2020-11-17 15:50:49
【问题描述】:

我目前正在使用 Salesforce 数据视图来检索用户在过去 60 天内打开电子邮件的次数。目前,我从每次用户打开时获取数据,但我想识别唯一打开。我目前的代码是这个:

SELECT COUNT(SubscriberKey) as Count_Opens, SubscriberKey as email
FROM ENT._Open o
WHERE JobID IN (SELECT JobID FROM _Sent s WHERE EventDate > dateadd(d,-60,getdate()))
GROUP BY SubscriberKey

例如,我的结果显示我的电子邮件地址与 104 次打开相关联。但我只想显示我的唯一打开次数,即过去 60 天内的 33 次。

我没有确定在哪里可以进行更改以仅检索唯一事件。我可以将与 JobID 和 SubscriberKey 关联的打开事件限制为不超过一个吗?如果可以的话,有什么建议吗?

PS:对不起我的英语。

【问题讨论】:

标签: sql dataview soql salesforce-marketing-cloud


【解决方案1】:

我认为您正在寻找isUnique 标志。它在_Open Data View documentation 中有描述。

SELECT 
  o.SubscriberKey as email
, COUNT(*) as Count_Opens
FROM _Open o
WHERE o.JobID IN (
    SELECT distinct
    s.JobID 
    FROM _Sent s 
    WHERE s.EventDate > convert(date, getDate()-60)
)
and o.isunique = 1
GROUP BY o.SubscriberKey

此外,Opens 的范围仅限于业务部门,因此 ent. 前缀不应适用于您的情况。

【讨论】:

  • 谢谢!它现在正在检索正确的计数。我试过 IsUnique 但不是这样。
【解决方案2】:

你只需要使用 isunique

你可以使用下面的代码

SELECT 
o.SubscriberKey as SubscriberKey
, COUNT(*) as Count_Opens
FROM _Open o
WHERE o.JobID IN (
    SELECT distinct
    s.JobID 
    FROM _Sent s 
    WHERE s.EventDate > convert(date, getDate()-60)
)
and o.isunique = 1
GROUP BY o.SubscriberKey

【讨论】:

    猜你喜欢
    • 2022-12-22
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-27
    • 1970-01-01
    • 2019-04-15
    相关资源
    最近更新 更多