SQLスキル:最大値の最大値を効率的にスクリーニングするラインMySQLデータベースでは、レコードグループの最大値に対応する行を抽出する必要があることがよくあります。この記事では、2つの主要な方法を紹介します。 メソッド1:サブクエリと接続このメソッドは、送信を使用して各グループの最大値を決定します。サブクエリはパケット識別子に従ってグループに分割され、指定された列の最大値が返されます。次に、接続条件としてパケット識別子と最大値を使用して、結果をメインウォッチに接続します。
例:
メソッド2:接続とフィルター別の方法は、左の外部接続を使用してメインウォッチを自分自身に接続することです。接続条件はグループ識別子に適用され、左側と右側の値を比較するために追加の条件を追加します。フィルターは、結果に右側に行(つまり、最大値に対応する行)のみがあることを保証します。
例:<code class="language-sql">SELECT a.id, a.rev, a.contents FROM YourTable a INNER JOIN ( SELECT id, MAX(rev) rev FROM YourTable GROUP BY id ) b ON a.id = b.id AND a.rev = b.rev</code>ログイン後にコピー概要
両方の方法が同じ結果を得て、ANSI SQL標準を満たすことができます。また、パフォーマンスの点ではより友好的ですが、実際のパフォーマンスはデータベースシステム、パターン、インデックスの存在によって異なります。特定のシナリオで最適なソリューションを決定するために、2つの方法をテストすることをお勧めします。
以上がSQLを使用して列の最大値で行を選択する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。