我在网站上有用户列表

User In Out
User 1 31.10.2023 04:20
User 1 31.10.2023 05:20
User 1 31.10.2023 05:25
User 2 31.10.2023 02:20
User 3 31.10.2023 03:00
User 3 31.10.2023 05:20
User 3 31.10.2023 05:21

我想要在站点上获得用户的结果列表

User In
User 1 31.10.2023 05:25
User 2 31.10.2023 02:20

请帮助进行SQL查询.

推荐答案

按每个用户分组,并仅 Select IN高于OUT的用户,这意味着他们仍在使用.

select user_name, max(in_time)
from your_table
group by user_name
having max(in_time) > max(out_time)

Sql相关问答推荐

如何在SQL Server中列出从当前月份开始的过go 10年中的月份

出现5次后,将所有正斜杠替换为连字符

Stack Exchange站点上的最短帖子(按正文长度计算,用户名为原始发帖(SEDE))

使用Lead获取下一个不同的日期

Lag()函数的差异:R与SQL(将R代码转换为SQL)

如何在snowflake中进行SQL的反向填充

计算周时出现SQL错误结果

为什么TRY_CONVERT返回一个XML验证错误而不是NULL?

如何在SQL Server中拆分包含字符和数字的列?

如何将`now()`作为SQL插入语句的一部分?

如何设计一个调用嵌套函数并仅在所有被调用的嵌套函数都提交时才提交的事务,例如,如果一个子函数失败则中止?

SQL:查询作为子查询或CTE写入的最大和数失败

如何判断小数点后千位是否不为0

SQL 语句将一列中的值与另一列中的不同值相加,同时按第三列进行分组?

Oracle函数中无法动态迭代创建的SYS_REFCURSOR

Select 字段,除非另一个字段包含重复项

我需要遍历权重值表并确定每个权重是否有效

如何根据另一列对行值进行分组?

SQL/Postgres:按日期和其他属性对相关性能进行分组

如何刷新在视图之上创建的表