分组取最新的一条数据
生活随笔
收集整理的這篇文章主要介紹了
分组取最新的一条数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
##分組取最新的一條數據,錯誤
SELECTa.account_balance,a.deposit_amount,a.deposit_time,a.create_user,a.resident_id,b.resident_code,b.resident_name,b.area_id,c.area_name,a.create_time FROMrevenue_resident_deposit aLEFT JOIN data_resident b ON a.resident_id = b.idLEFT JOIN data_area c ON c.id = b.area_id GROUP BY resident_id ORDER BY deposit_time DESC?
?
##方法一 分組取最新的一條數據,可行,但LIMIT限定數量100000,數據數量需要計算獲取
SELECTa.account_balance,a.deposit_amount,a.deposit_time,a.create_user,a.resident_id,b.resident_code,b.resident_name,b.area_id,c.area_name,a.create_time FROM(SELECT * FROM revenue_resident_deposit ORDER BY deposit_time DESC LIMIT 100000) as aLEFT JOIN data_resident b ON a.resident_id = b.idLEFT JOIN data_area c ON c.id = b.area_id GROUP BY a.resident_id?
?
##方法二 分組取最新的一條數據,可行
SELECTa.account_balance,a.deposit_amount,a.deposit_time,a.create_user,a.resident_id,b.resident_code,b.resident_name,b.area_id,c.area_name,a.create_time FROMrevenue_resident_deposit aLEFT JOIN data_resident b ON a.resident_id = b.idLEFT JOIN data_area c ON c.id = b.area_idLEFT JOIN (SELECT MAX(id) id FROM revenue_resident_deposit GROUP BY resident_id) d ON d.id =a.id WHEREa.id = d.id?
?
##方法三 分組取最新的一條數據,可行
SELECTa.account_balance,a.deposit_amount,a.deposit_time,a.create_user,a.resident_id,b.resident_code,b.resident_name,b.area_id,c.area_name,a.create_time FROMrevenue_resident_deposit aLEFT JOIN data_resident b ON a.resident_id = b.idLEFT JOIN data_area c ON c.id = b.area_idLEFT JOIN (SELECT MAX(deposit_time) dt FROM revenue_resident_deposit GROUP BY resident_id) d ON d.dt =a.deposit_time WHEREa.deposit_time = d.dt?
總結
以上是生活随笔為你收集整理的分组取最新的一条数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2019/09/11-作业02
- 下一篇: Eventually Consisten