溫馨提示×

mysql select去重時保留最新記錄

小樊
255
2024-06-25 09:32:34
欄目: 云計算

要在MySQL中進行SELECT查詢并去重同時保留最新記錄,可以使用子查詢和INNER JOIN的方法。

例如,假設(shè)有一個表格名為records,包含以下字段:id、nametimestamp,timestamp為記錄的時間戳。要查詢?nèi)ブ夭⒈A糇钚掠涗浀臄?shù)據(jù),可以使用以下查詢:

SELECT r1.*
FROM records r1
INNER JOIN (
    SELECT name, MAX(timestamp) AS max_timestamp
    FROM records
    GROUP BY name
) r2 ON r1.name = r2.name AND r1.timestamp = r2.max_timestamp;

這個查詢首先在子查詢中找到每個name對應(yīng)的最新記錄的時間戳max_timestamp,然后將該子查詢與原始表records進行內(nèi)連接,以獲取每個name對應(yīng)的最新記錄的完整數(shù)據(jù)。

0