ホームページ >データベース >mysql チュートリアル >MySQL で各グループと最新の日付を持つすべてのモデルの最新の日付を確認するにはどうすればよいですか?

MySQL で各グループと最新の日付を持つすべてのモデルの最新の日付を確認するにはどうすればよいですか?

DDD
DDDオリジナル
2025-01-24 08:47:12942ブラウズ

How to Find the Latest Date for Each Group and All Models with the Latest Date in MySQL?

MySQL のグループ化されたデータから最新の日付を取得します

特定のデータセット内の各モデル グループの最新の日付を取得するには、次のクエリを使用します:

<code class="language-sql">SELECT model, MAX(date) AS latest_date
FROM doc
GROUP BY model;</code>

このクエリは、まず model テーブル内の行を doc 列ごとにグループ化し、次に各グループ内の最大の日付を検索します。結果は、model (グループを識別する) と latest_date (グループの最新の日付を示す) の 2 つの列を含むテーブルになります。

全体的な最新の日付を持つすべてのモデルを検索する必要がある場合:

<code class="language-sql">SELECT model, date
FROM doc
WHERE date = (SELECT MAX(date) FROM doc);</code>

このクエリは、テーブル全体で最新の日付と同じ日付を持つすべての行を検索します。

その他のオプション

最新の日付に一致する各レコードから詳細を取得する必要があるシナリオでは、次のクエリを使用できます:

<code class="language-sql">SELECT d.model, d.date, d.color, d.etc
FROM doc d
WHERE d.date = (SELECT MAX(d2.date) FROM doc d2 WHERE d2.model = d.model);</code>

MySQL 8.0 以降では、OVER 句が提供されており、より大きなデータ セットに対してより高速な結果を提供できます。

以上がMySQL で各グループと最新の日付を持つすべてのモデルの最新の日付を確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。