MySQLで各グループの最新レコードをグループ化して照会する方法は何ですか?

各グループの最新レコードをまとめるクエリを行うには次の文章を使用します。

SELECT t1.*
FROM your_table t1
JOIN (
    SELECT group_id, MAX(created_at) AS max_created_at
    FROM your_table
    GROUP BY group_id
) t2 ON t1.group_id = t2.group_id AND t1.created_at = t2.max_created_at;

述語中の your_table はデータを保存するテーブル名、group_id はグループ化するフィールド名、created_at はレコードの作成時間を保存するフィールド名です。このクエリはまず各グループの最新のレコードの作成時間を計算し、次にそれらの最新時間と元のテーブルを結合することで、対応する最新のレコードを取得します。

bannerAds