每月新电子邮件地址的百分比

时间:2016-05-23 02:00:27

标签: sql

如何创建在给定月份中拥有%新客户电子邮件的结果

电子邮件地址=电子邮件 date = created_at

注意:created_at是unix代码

伪代码可以 1 - 日期x和日期y之间的不同电子邮件数(分母) 2 - 日期x和日期y之间的不同电子邮件数量,其中电子邮件不在日期a和日期x(分子)之间

帮助! THX!

1 个答案:

答案 0 :(得分:0)

您可以通过在电子邮件级别聚合然后再次聚合来实现伪代码:

select sum(between_xy * (1 - between_ax)) / sum(between_xy)
from (select email,
             max(case when created_at between $x and $y then 1 else 0 end) as between_xy,
             max(case when created_at between $a and $x then 1 else 0 end) as between_ax
      from t
      group by email
     ) t;

select count(在$ x和$ y之间created_at时的不同情况) 从t