一、問題描述
有這么一個表,里面一個字段多條可能相同,比如兩個1五個2之類的。需要每個不同的數(shù)字拿出來最新的一條數(shù)據(jù)。
如上圖。
二、解決思路
1、首先通過 ??financial_order_id?
? 進行分組查詢最大的時間集合
SELECT financial_order_id,MAX(create_time) maxtime FROM financial_order_item GROUP BY financial_order_id
2、使用上一步查出的時間集合聯(lián)表查詢得出結(jié)果。
select * from financial_order_item a left join (
SELECT financial_order_id,MAX(create_time) maxtime FROM financial_order_item GROUP BY financial_order_id
) b on a.financial_order_id=b.financial_order_id and a.create_time=b.maxtime
三、結(jié)果測試
select * from financial_order_item a left join (
SELECT financial_order_id,MAX(create_time) maxtime FROM financial_order_item GROUP BY financial_order_id
) b on a.financial_order_id=b.financial_order_id and a.create_time=b.maxtime
本文摘自 :https://blog.51cto.com/u