MySQL用户最近记录



我有一个MySQL数据库,其中包含对我的服务器进行的每个API调用。此表用于各种分析。该表的结构如下:

---------------------------------------------
| user_id | api_call_time | app_version |
---------------------------------------------
1 | 2014-09-11 09:25:04 | v1
2 | 2014-09-11 09:26:06 | v1
1 | 2014-09-11 09:27:04 | v2

我试图找出哪些用户已经切换到新版本(即哪些用户的app_version列中至少有一条v2记录。我尝试了两种方法,一种是搜索WHERE app_version = 'v2',另一种是使用SELECT MAX(api_call_time),app_version FROM...,但在这两种情况下都没有选择正确的结果。

查找哪些用户拥有包含app_version = v2的记录的最佳方法是什么?

如果我理解你的话。我认为这个查询可以帮助你:

编辑:

select count(user_id) as count,user_id from you_table where app_version = 'v2' group by user_id

此查询将返回具有user_id和user_id计数的一行,其中app_version=v2

thins查询将显示使用'v2':多次调用并在列表中调用的用户

select user_id , count(app_version) 
from table_name 
where user_id in (select user_id from table_name where app_version='v2') 
group by user_id
having count(app_version) >1

相关内容

  • 没有找到相关文章

最新更新