首頁 > 資料庫 > mysql教程 > 如何在 MySQL 中擷取按 Home 分割區的具有最大日期時間值的行?

如何在 MySQL 中擷取按 Home 分割區的具有最大日期時間值的行?

Linda Hamilton
發布: 2025-01-25 06:16:09
原創
483 人瀏覽過

How to Retrieve Rows with Maximum DateTime Values Partitioned by Home in MySQL?

在MySQL中提取最大的DateTime值,由另一列

分組 >資料庫查詢通常需要根據多種條件檢索特定資料。 經常執行的任務涉及選擇包含列的最大值的行,並由另一列分類。本指南以播放器效能表作為範例示範了MySQL解決方案。

>考慮一個名為“ topten”的表,帶有列id',“ home”,“ dateTime”,“ player”和“資源”的表。目的是使用每個唯一的“家庭”位置的最新(“ DateTime”)條目來獲取該行。

在探索了各種方法(包括子征服和加入)之後,最有效的查詢被證明為:

此查詢在兩個階段中函數。 它首先產生一個臨時表('groupedtt'),該表儲存每個不同的「主頁」的最大「 dateTime」。 隨後,它使用“ home”和“ dateTime”作為加入條件,將“ topten”(“ tt”)加入“ ttt”)。 這樣可以確保僅傳回每個「家庭」的最大「 dateTime」行。

>
<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>
登入後複製
這種方法提供了一種有效的方法,用於檢索最大列值的行,並由MySQL中的另一列分區,從而促進了從資料庫中提取目標和相關資料的行。

以上是如何在 MySQL 中擷取按 Home 分割區的具有最大日期時間值的行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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