MySQL选择在日期范围之前出现值的行数

时间:2014-08-14 13:50:54

标签: mysql select

我有一个包含以下列的表

id | user_id |日期

我想要做的是计算user_id在该日期范围之前有一行的日期范围之间的行。

因此,例如,如果此表跟踪用户登录,我想计算本月登录的用户,这些用户以前在本月之前登录过,基本上忽略了本月加入的新用户。

理想情况下,单个查询,任何帮助表示赞赏。

由于

1 个答案:

答案 0 :(得分:0)

尝试这样的事情:

SELECT Count(distinct user_id) usr_count
FROM userlogins u
WHERE 
    -- here we are getting those users for current period...
    login_date between '2014-02-01' and '2014-02-28'
    -- only where a record exists for that user in an earlier period
   and exists (Select * From userlogins 
         where user_id = u.user_id and login_date < '2014-02-01');