1
A
回答
1
事情是这样的:
select * from UserLog l1
where Operation = 'Enter' and
not exists(select * from UserLog l2
where l1.user = l2.user and
l2.Operation = 'Exit' and
l2.Time > l1.Time)
1
我认为这应该为你工作:
SELECT *
FROM (
SELECT ROW_NUMBER() OVER (PARTITION BY UL.id ORDER BY UL.Time DESC) AS RN, UL.*
FROM dbo.UserLog AS UL
) AS T
WHERE T.RN = 1
AND T.Operation = 'Enter';
通过用户名和排序最后动作只是时间分割你的表 - 如果它是Enter
,那么他就必须在线。
相关问题
- 1. 通过SignalR登录和注销
- 2. 通过Silex中的SecurityServiceProvider登录/注销
- 3. 通过Objective-c处理登录/注销
- 4. 记录每个用户的登录/注销ASP.Net成员资格
- 5. 如何使用/(索引)路线两次登录和注销?
- 6. Google帐户登录和注销
- 7. 告诉MVC5用户已通过Active Directory登录/注销
- 8. 如何通过登录注销用户(不是当前)?
- 9. VBA登录和注销Facebook
- 10. CVS登录和注销
- 11. 网站登录和注销
- 12. 登录和注销挥杆
- 13. 登录和注销jsf
- 14. Android:facebook登录和注销
- 15. 登录变更注销在登录时
- 16. 登录/注销的管理员和普通用户
- 17. 显示用户名登录注销ASP
- 18. Grails注销另一个登录用户
- 19. Rails:注销事件登录用户
- 20. 单元测试用户登录/注销
- 21. Silverstripe登录/注销
- 22. Django登录/注销
- 23. facebook登录/注销
- 24. Facebook登录/注销
- 25. 登录注销smarty
- 26. 注销登录后,Django csrf失败登录新用户
- 27. Asp.net登录状态不说用户登录后注销
- 28. 使用AJAX登录/注销
- 29. 使用UITabBarController登录/注销?
- 30. 检测用户通过Google Analytics登录
你是什么意思在线?现在在线? –
是的。我需要找到已经登录但尚未注销的用户。 – Behnam