寻找一周后回来的客户

卡梅

这是我的桌子:

 sessid  userid  date        prodcode 
 xxxxx   xx0101  01/01/2020  rpd032   
 xxxxx   xx2021  01/01/2020  xxxx01    
 xxxxx   xx0101  01/01/2020  xx0381    
 xxxxx   xxju23  02/01/2020  xxx023
 xxxxx   xxjp17  03/01/2020  xxx016
 xxxxx   xxju23  03/01/2020  xxxx03
 xxxxx   xx2021  04/01/2020  xxx023
 xxxxx   xxx270  05/01/2020  xxx023
 xxxxx   xx0j34  06/01/2020  rpd032
 xxxxx   xxcj02  07/01/2020  xxx333
 xxxxx   xxjr04  08/01/2020  rpd032

我想每周运行一次查询。我可能稍后再谈谈。现在,我想知道从02/01/2020开始的一周返回网站的客户数量。从上面的示例中您可以看到,只有一位客户回来(xxju23),因此我的查询结果应该为1,但我为此感到吃力。

 select count(userid)
 from (
   select userid, count(*) as comingbak 
   from orders 
   where customers in dateadd(week,7,'02/01/2020') 
   groupby comingback
   having cominback > 1
 );
专线小巴

我们了解到,您正在寻找在1月2日开始的一周内在该网站上进行了多次访问的客户数量。

考虑:

select count(*)
from (
    select 1
    from orders
    where date >= '20200102' and date < dateadd(week, 1, '20200102')
    group by userid
    having count(*) > 1
) t

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章