计算一周的增长,同时考虑几个参数

时间:2017-07-11 08:30:09

标签: sql postgresql

祝大家好!

我尽力在这里找到一个先前已经解决的案例,但却找不到任何模糊相似的内容。

所以,打开别人可以帮助我: 我每天都有关于他们找到我的组织的新工作申请和来源的条目。

目前我有下表:
enter image description here

,其中 - Lead_create 是从2017年1月第一周开始按星期分组的日期,一直持续到今天。

- 来源是申请人找到我的组织的来源

- 计数是每周通过独特来源找到我的应用数量

我需要什么: 计算来自某个来源的申请人数量的百分比变化。 例如,如果我们只查看一个特定的来源(让我们说,Ydirect),我需要以下内容:

enter image description here

但是,我需要为所有来源(而不仅仅是Ydirect)计算它。

到目前为止我尝试了什么: 我找到了LAG和WINDOW函数的组合,但它只计算了以下行

非常感谢提前!

最佳, 约翰

1 个答案:

答案 0 :(得分:0)

这可能是你想要的那个

select t.*,
   (100 * t.count / tprev.count) /  100
from applicationCount t left join
   applicationCount tprev
   on tprev.lead_create = t.lead_create - interval 7 day AND 
   tprev.source = t.source
GROUP BY t.id
ORDER BY t.source ASC, t.id ASC;  

fiddle链接

out put就像: enter image description here