首页 > 解决方案 > SQL - 创建一个查询,显示在特定时间范围内登录最多的用户

问题描述

我的桌子是这样的

时间戳 用户身份
日期 用户1
日期 用户2
日期 用户1
日期 用户3
日期 用户1
日期 用户2

我只是想创建一个 sql 状态来选择所有用户并按照他们在特定时间段内登录的次数对其进行排序。

我做了它来区分选择用户,但不是更多......

SELECT DISTINCT userid 
FROM mytable 
WHERE timestamp >= '2021-01-01' AND timestamp <= '2021-01-02';

标签: sql

解决方案


我们可以像下面这样使用 Group by 吗?

select count(*), userid FROM mytable WHERE timestamp >= '2021-01-01' AND timestamp <= '2021-01-02' group by userid;

推荐阅读