首頁 > 資料庫 > mysql教程 > 如何為每個家庭選擇最大日期時間,同時在 MySQL 中保留玩家資訊?

如何為每個家庭選擇最大日期時間,同時在 MySQL 中保留玩家資訊?

DDD
發布: 2025-01-25 06:42:14
原創
178 人瀏覽過

How to Select Maximum Datetime for Each Home While Retaining Player Information in MySQL?

在 MySQL 中高效檢索最大日期時間以及關聯的玩家數據

本文演示瞭如何為 MySQL 表中的每個唯一“home”條目選擇最大日期時間,同時保留所有關聯的玩家信息。 挑戰在於檢索每個家庭的最大日期時間值,同時又不丟失其他有價值的數據點,例如玩家詳細信息和資源。 之前的嘗試經常會導致數據重複或不正確。

最佳解決方案涉及一個子查詢來識別每個家庭的最大日期時間,然後通過連接操作來檢索完整的行信息。

解決方案

以下 SQL 查詢有效解決了這個問題:

<code class="language-sql">SELECT tt.*
FROM topten tt
INNER JOIN
    (SELECT home, MAX(datetime) AS MaxDateTime
    FROM topten
    GROUP BY home) groupedtt 
ON tt.home = groupedtt.home 
AND tt.datetime = groupedtt.MaxDateTime;</code>
登入後複製

此查詢使用自連接。內部子查詢 (groupedtt) 按 home 對數據進行分組,並確定每個組的最大值 datetime。 然後,外部查詢使用 tthome 作為連接條件,將此結果連接回原始表 (MaxDateTime)。 這可確保僅選擇代表每個家庭的最大日期時間的行,同時保留原始表中的所有列。 這種方法避免了數據重複並保證了數據準確性。

以上是如何為每個家庭選擇最大日期時間,同時在 MySQL 中保留玩家資訊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板