簡體   English   中英

SQL如何將數據組合在一起

[英]SQL How to group data together

帶有未分類數據的表

帶有未分類數據的表顯示了我現在收到的數據。 我需要做的是將用戶名組合在一起。 所以它看起來像圖片“帶有排序數據的表”。 如果我的問題不清楚,請告訴我。 我不太擅長解釋事情。

帶有排序數據的表

根據您的評論,用戶可以多次登錄而無需注銷。 以下查詢將在每次登錄后為每個用戶獲取下一個最快的注銷時間。 如果沒有會話ID,似乎沒有任何方法可以保證每個登錄時間與哪個登出時間相關聯。

Select UserName, 
    LoggedOn, 
    (select min(LoggedOut) from dbo.MyTable T1 where T.UserName = T1.UserName and T.LoggedOn <= T1.LoggedOut)
from dbo.MyTable T
where LoggedOn is not null

在Sql數據中始終顯示沒有組,但應用程序或報表使用此重復字段為組,它就像您喜歡的那樣。

這將為您提供我所相信的東西。 如果您不關心訂單,除了將用戶名分組在一起之外,您可以在Order by子句后面刪除“,LoggedOn”。 您還可以將其他參數放在第一個Order by字段后面,它將首先按用戶名,然后按Logged,然后按x,然后按y來排序結果集。

希望這可以幫助。

select UserName, LoggedOn, LoggedOut 
from dbo.Table
Order by Username, LoggedOn

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM