轉載自:https://blog.csdn.net/davis_23/article/details/95616845
對於 MySQL查詢時間最大或最新的一條記錄的SQL寫法,在網上找了好多,大部分都是錯的,這些錯的都還基本都一樣的寫法,可能也都是抄別人的,都沒有認真去試驗過,不負責的表現,最後找到一篇,經測試後成功查出最新的一條記錄。
對於網上的"mysql查詢最近一條記錄"問題解決方案,什麼還提供下策、中策、下策什麼鬼的,根本就不行,不僅不行還是錯的SQL,網上大部分的max()的寫法都是隻是查出了最大的那個字段而已,而其他字段根本就沒有過濾出是對應最大時間或最新的那個。
下面是我給出的正確方法,供參考:
SELECT
a.id,
a.other_table_id,
a.updated_date
FROM
table1 a,
( SELECT other_table_id, max( updated_date ) AS lastUpdate FROM table2 GROUP BY other_table_id ) b
WHERE
a.other_table_id = b.other_table_id
AND a.updated_date = b.lastUpdate