sql_查詢每個tid當前的狀態:即類別最新發表的那條記錄
發表時間:2023-07-16 來源:明輝站整理相關軟件相關文章人氣:
[摘要]一、問題場景一個表中有關鍵字段tid,action,dateline等,tid代表帖子的id,action代表這個帖子被操作的狀態,dateline代表該數據被插入的時間戳;此表中,每個tid都會有...
一、問題場景
一個表中有關鍵字段tid,action,dateline等,tid代表帖子的id,action代表這個帖子被操作的狀態,dateline代表該數據被插入的時間戳;
此表中,每個tid都會有多條不同dateline插入的明細,最后時間插入的明細中的action字段表示當前tid的帖子狀態;
現在想要查詢每個tid當前的狀態,即查詢最新發表的那條記錄
表中數據樣本:

二、sql語句:
select a.* from pre_forum_threadmod as a,(select tid,max(dateline) as dateline from pre_forum_threadmod group by tid) as b
where a.tid=b.tid and a.dateline=b.dateline

三、sql語句解析:
上述sql語句中,先查出每個tid的最大的dateline,查詢生成一個臨時表b;
(select tid,max(dateline) as dateline from pre_forum_threadmod group by tid) as b
然后原表a與臨時表b關聯查詢即可:
where a.tid=b.tid and a.dateline=b.dateline
查詢后如下圖,每個tid的最新的紀錄就能查出來:

以上就是sql_查詢每個tid當前的狀態:即類別最新發表的那條記錄的詳細內容,更多請關注php中文網其它相關文章!
學習教程快速掌握從入門到精通的SQL知識。