Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memilih Baris Unik dengan Nilai Minimum dalam SQL?

Bagaimana untuk Memilih Baris Unik dengan Nilai Minimum dalam SQL?

Linda Hamilton
Lepaskan: 2025-01-24 08:11:10
asal
537 orang telah melayarinya

How to Select Unique Rows with the Minimum Value in SQL?

Bagaimana untuk memilih baris unik dengan nilai minimum dalam pertanyaan SQL?

Dalam pangkalan data, selalunya perlu untuk mengekstrak rekod yang mengandungi nilai minimum lajur tertentu. Katakan jadual mengandungi lajur 'id', 'permainan' dan 'titik'. Untuk memilih satu-satunya baris dengan nilai 'titik' terkecil (dihimpunkan mengikut 'permainan'), anda boleh menggunakan pertanyaan SQL yang sah berikut:

<code class="language-sql">SELECT tbl.*
FROM TableName tbl
INNER JOIN
(
  SELECT Id, MIN(Point) MinPoint
  FROM TableName
  GROUP BY Id
) tbl1
ON tbl1.id = tbl.id
WHERE tbl1.MinPoint = tbl.Point</code>
Salin selepas log masuk

Pertanyaan ini memastikan bahawa hanya baris dengan nilai 'titik' terkecil untuk setiap 'id' unik dipilih. Subquery di dalam kurungan mengira nilai 'titik' minimum untuk setiap 'id' dan menyimpannya dalam lajur sementara 'MinPoint'. Pertanyaan utama kemudiannya bergabung dengan jadual asal ('TableName') dengan jadual sementara ini berdasarkan lajur biasa 'id'.

Dengan menapis syarat 'tbl1.MinPoint = tbl.Point', pertanyaan memastikan bahawa hanya baris yang nilai 'titik'nya sepadan dengan nilai minimum dalam setiap kumpulan 'id' dikembalikan. Ini akan menghasilkan output yang dikehendaki, di mana bagi setiap 'permainan' baris unik dengan nilai 'titik' terkecil dipilih.

Contoh:

Pertimbangkan borang berikut:

id game point
1 x 5
1 z 4
2 y 6
3 x 2
3 y 5
3 z 8

Melaksanakan pertanyaan di atas pada jadual ini akan menghasilkan output berikut:

id game point
1 z 4
2 y 6
3 x 2

Seperti yang anda lihat, pertanyaan mengenal pasti baris unik dengan betul dengan nilai 'mata' terkecil untuk setiap 'permainan'.

Nota: Terdapat ketidakkonsistenan antara data sampel asal dan keputusan Jadual keputusan telah diperbetulkan untuk menjadikannya konsisten dengan keputusan penyata SQL. Jadual hasil yang diperbetulkan menunjukkan baris dengan nilai id terkecil untuk setiap point. Jika anda perlu memilih nilai game terkecil dengan point mengumpulkan, anda perlu mengubah suai pernyataan SQL.

Atas ialah kandungan terperinci Bagaimana untuk Memilih Baris Unik dengan Nilai Minimum dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan