Mysql查詢每個分組中最大值的整條資料

2021-10-17 01:35:26 字數 582 閱讀 1051

表tmp中記錄的是人員享受補貼的記錄,每個人會有多條不同時間的享受記錄,現在需要查詢每個人最後一次享受補貼的記錄

select

a.*from

tmp a

inner

join

(select

max( issuing_date )

as max_issuing_date, s.identity_card

from

`tmp` s group

by s.identity_card ) b

on a.issuing_date = b.max_issuing_date and a.identity_card = b.identity_card

首先,我們需要查詢的是這個表中記錄 from tmp,然後要加上條件:1.每個人的標示身份證identity_card, 2.發放時間最大值max(issuing_date)

我這裡用inner join新增條件,子查詢b 對tmp根據身份證分組,查詢每個人identity_card,最後發放時間max_issuing_date,再關聯a表,查詢到a表中符合條件的資料.

MySQL查詢分組最大值所在整條記錄

建立了張測試的表user 查詢ip是127.0.0.1,使用者角色role為 user 和 tmp 中status最大的記錄所在整行記錄。我的查詢為先取出所要的最大值,作為條件再去查詢一遍。這樣可以得出想要的結果,但感覺有點繁瑣。網上有排序查詢的方法,先根據status排序,再根據role排序,下邊...

sql多表查詢分組最大值

問題描述 有三張表 學生表student id,name id為主鍵 課程表subject id,name id為主鍵 分數表score studentid,subjectid,score 其中studentid與subjectid為聯合主鍵,一句sql語句查詢出 學號,姓名,課程名,課程最高分.模...

SQL分組最大值

employee表包含所有員工資訊,每個員工有其對應的 id,salary 和 department id。id name salary departmentid 1 joe 70000 1 2 henry 80000 2 3 sam 60000 2 4 max 90000 1 department...