Mengekstrak baris unik dengan nilai minimum menggunakan SQL
pertanyaan SQL sering melibatkan memilih baris tertentu berdasarkan keadaan yang ditetapkan. Senario yang sama adalah mengambil semula baris dengan nilai minimum dalam lajur, sambil memastikan bahawa hanya baris unik yang dikembalikan.mari kita ilustrasikan dengan jadual sampel ini:
<code>id | game | point -------+--------+-------- 1 | x | 5 1 | z | 4 2 | y | 6 3 | x | 2 3 | y | 5 3 | z | 8</code>
dengan nilai id
terendah untuk setiap point
, kita boleh menggunakan subquery dan gabungan dalaman. Subquery mengenal pasti minimum game
untuk setiap point
: id
<code class="language-sql">SELECT Id, MIN(Point) AS MinPoint FROM TableName GROUP BY Id</code>
s dan nilai minimum masing -masing id
masing -masing. Pertanyaan utama kemudian menyertai hasil ini dengan jadual asal, penapisan untuk baris yang sepadan dengan mata minimum: point
<code class="language-sql">SELECT tbl.* FROM TableName tbl INNER JOIN ( SELECT Id, MIN(Point) AS MinPoint FROM TableName GROUP BY Id ) tbl1 ON tbl1.id = tbl.id WHERE tbl1.MinPoint = tbl.Point;</code>
<code>id | game | point -------+--------+-------- 1 | z | 4 3 | x | 2 2 | y | 6</code>
untuk setiap point
, menyediakan dataset yang bersih untuk analisis berikutnya. id
Atas ialah kandungan terperinci Bagaimana untuk Mengambil Baris Berbeza dengan Nilai Minimum dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!