Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mencari Nilai Maksimum Unik untuk Data Dikumpulkan dalam Jadual?

Bagaimana untuk Mencari Nilai Maksimum Unik untuk Data Dikumpulkan dalam Jadual?

Linda Hamilton
Linda Hamiltonasal
2025-01-16 13:14:02171semak imbas

How to Find Unique Maximum Values for Grouped Data in a Table?

Cari nilai maksimum data terkumpul

Memandangkan jadual dengan berbilang lajur, tugas biasa adalah untuk mengenal pasti nilai maksimum dalam kumpulan tertentu. Dalam contoh yang diberikan, kami mempunyai data yang berkaitan dengan pam (Pump1 dan Pump2) dengan nilai berbeza dan lajur tambahan (Lajur Lain) . Matlamatnya adalah untuk mendapatkan nilai maksimum bagi setiap pam.

Satu pendekatan mungkin melibatkan penggunaan subkueri untuk memilih nilai maksimum yang dikumpulkan mengikut lajur nama:

<code class="language-sql">select name, max(value) as value
from out_pumptable
group by name</code>

Walau bagaimanapun, seperti yang dinyatakan dalam soalan, pendekatan ini mungkin boleh dilakukan jika terdapat berbilang maksimum untuk kumpulan tertentu (dalam kes ini, Pam 1 mempunyai dua entri dengan maks yang sama) Entri pendua akan dikembalikan.

Untuk menyelesaikan masalah ini, anda boleh menggunakan kata kunci DISTINCT untuk memastikan bahawa hanya nilai maksimum berbeza dikembalikan:

<code class="language-sql">select name, max(value) as value
from out_pumptable
group by name
having max(value) not in (select value from out_pumptable group by value having count(*) > 1)</code>

Pengubahsuaian ini menyemak sama ada nilai maksimum adalah unik merentas jadual (menggunakan subkueri). Jika nilai itu tidak unik, ia dikecualikan daripada keputusan. Kaedah ini lebih tepat mewakili nilai maksimum bagi setiap pam.

Atas ialah kandungan terperinci Bagaimana untuk Mencari Nilai Maksimum Unik untuk Data Dikumpulkan dalam Jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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