我们有一个跟踪用户登录和退出的表。
此查询按最后一个操作的顺序返回所有记录,等等:
SELECT [entryid]
,[index]
,[sessionid]
,[UserName]
,[UserPublicIP]
,[EntryDateTime]
,[ServerIP]
,[EventDesc]
FROM [DB].[dbo].[table]
order by EntryDateTime desc
我们需要一个查询来返回当前登录的用户。
EventDesc 的可能值为:
Session Login Succeeded
Session Logoff Succeeded
Session reconnection succeeded
Session has been disconnected
Shell start notification received
etc
我们如何创建 q SQL 查询,该查询从最后一个 EntryDesc 所在的行中列出用户名(和其他列):会话登录成功或会话重新连接成功,即用户登录。
我们已经尝试使用 Distinct & Group By 查询,如下所示,但它们似乎不起作用:
Select * From [DB].[dbo].[table] Group By Username
Select Distinct Username From [DB].[dbo].[table]
仅供参考:每次用户登录我们的 etc 时,都会在表中创建一行,因此查询需要为相关用户名选择最新行。