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

Bagaimana untuk Memilih Baris Berbeza dengan Nilai Minimum untuk Medan Tertentu dalam SQL?

Barbara Streisand
Lepaskan: 2025-01-17 20:15:10
asal
577 orang telah melayarinya

How to Select Distinct Rows with the Minimum Value for a Specific Field in SQL?

Memilih Baris Unik dengan Tarikh Rekod Terawal

Andaikan anda mempunyai jadual dengan berbilang entri untuk setiap pengecam unik dan anda perlu mendapatkan hanya baris unik yang mewakili tarikh rekod paling awal untuk setiap pengecam. Ini amat berguna apabila berurusan dengan tarikh rekod pendua.

Berikut ialah pertanyaan SQL yang menyelesaikan masalah ini dengan cekap:

<code class="language-sql">SELECT mt.*
FROM MyTable mt
INNER JOIN (
    SELECT id, MIN(record_date) AS MinDate
    FROM MyTable
    GROUP BY id
) t ON mt.id = t.id AND mt.record_date = t.MinDate;</code>
Salin selepas log masuk

Pertanyaan ini berfungsi dalam dua langkah:

  1. Cari Tarikh Minimum: Pertanyaan dalaman (SELECT id, MIN(record_date) AS MinDate FROM MyTable GROUP BY id) mengenal pasti record_date minimum untuk setiap id unik.

  2. Pilih Baris Padanan: Pertanyaan luar bergabung dengan hasil pertanyaan dalam dengan jadual asal (MyTable). Ia hanya memilih baris daripada MyTable di mana kedua-dua id dan record_date sepadan dengan tarikh minimum yang terdapat dalam pertanyaan dalam.

Hasil akhir mengandungi hanya baris dengan record_date terawal untuk setiap pengecam unik, menghapuskan baris pendua dengan tarikh rekod yang berbeza.

Atas ialah kandungan terperinci Bagaimana untuk Memilih Baris Berbeza dengan Nilai Minimum untuk Medan Tertentu 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