SQL 獲取每個使用者最新的一條資料記錄

2021-10-24 03:28:52 字數 426 閱讀 2852

被問這個問題的時候我的第一想法居然是用order by。。。。唉,好好的max 放著不用。。。

sql示例:獲取檔案上傳記錄表中,每個使用者產生的最新一條記錄:

select * from file_record as a inner join (

select file_author,max(file_ctime) as file_ctime  from file_record group by file_author) as b

on a.file_author=b.file_author 

and a.file_ctime=b.file_ctime

如上,通過使用max、group by、inner join 即可獲取到每個使用者的最新一條資料記錄;如果只是需要每個人的最新操作時間,只需要用到b的內容就可以了。

SQL 選取每個分組的某一條資料

背景 有時候我們需要對多條資料按照某個字段分組,然後選取某組中的某乙個記錄。例如 同一運單 有多條裝車記錄時 取最大時間的記錄 sql 實現 1.sqlserver select waybill id,運單號 sigin time,簽到時間 unload time,卸車時間 loading time...

sql 多組條資料取每組最新的一條資料

問 資料庫一張表中有不同公司不同時間發來的資料,怎樣取每個公司最新的那條資料呢?答 使用分析函式row number over partiion by order by 來進行分組編號,然後取分組標號值為1的記錄即可。目前主流的資料庫都有支援分析函式。其中,partition by 是指定按哪些字段...

優化mysql查詢最新一條資料

title 優化mysql查詢最新一條資料 date 2019 07 24 11 23 21 categories 今天寫web時,發現有個請求一直沒有響應,用谷歌f12看了一下,請求出現了乙個問題。我第一反應是網路延遲,又試了幾次,還是這個問題,便看了一下後台控制台也沒報錯,便想是不是sql查詢時...