Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mencari Nilai Skor Pendua Merentasi ID Khusus dalam MySQL?

Bagaimana untuk Mencari Nilai Skor Pendua Merentasi ID Khusus dalam MySQL?

Barbara Streisand
Lepaskan: 2025-01-22 20:56:10
asal
355 orang telah melayarinya

How to Find Duplicate Score Values Across Specific IDs in MySQL?

Helah untuk mendapatkan semula nilai lajur pendua dalam MySQL

Dalam pangkalan data MySQL, anda mungkin perlu mendapatkan semula baris tersebut yang berkongsi nilai yang sama dalam lajur tertentu. Pertimbangkan jadual berikut, di mana lajur "Skor" mengandungi nilai yang dikaitkan dengan "ID" yang berbeza:

ID 分数
1 95
2 100
3 88
4 100
5 73

Andaikan anda ingin mendapatkan semula markah yang berlaku dalam dua baris dengan "ID" bersamaan dengan 2 dan 4.

Penyelesaian:

Untuk mencapai ini menggunakan MySQL, anda boleh menggunakan pertanyaan berikut:

<code class="language-sql">SELECT score
FROM t
GROUP BY score
HAVING COUNT(*) > 1 AND SUM(CASE WHEN id = 2 THEN 1 ELSE 0 END) > 0 AND SUM(CASE WHEN id = 4 THEN 1 ELSE 0 END) > 0;</code>
Salin selepas log masuk

Pertanyaan ini melakukan langkah berikut:

  1. KUMPULAN OLEH: Ia mengumpulkan baris berdasarkan lajur "Skor".
  2. *Kira (COUNT()):** Ia mengira bilangan baris dalam setiap kumpulan, memastikan bahawa hanya skor pendua dikembalikan.
  3. Kiraan Bersyarat (JUMLAH(KES BILA ... TAMAT)): Ia mengira bilangan baris dengan ID 2 dan ID 4 masing-masing dalam setiap kumpulan.
  4. Klausa HAVING: Klausa HAVING memastikan bahawa hanya skor dengan kiraan skor lebih daripada 1 dikembalikan dan skor dengan ID 2 dan ID 4 kedua-duanya lebih besar daripada 0.

Dalam kes ini, keputusannya ialah:

<code>分数
100</code>
Salin selepas log masuk

Pertanyaan ini secara berkesan mendapatkan semula nilai skor yang berlaku dalam kedua-dua baris dengan "ID" bersamaan dengan 2 dan 4. Pertanyaan yang dipertingkatkan menyatakan keadaan penapis dengan lebih jelas dan mengelakkan kemungkinan ralat logik.

Atas ialah kandungan terperinci Bagaimana untuk Mencari Nilai Skor Pendua Merentasi ID Khusus dalam MySQL?. 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