Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mencari Nilai Biasa Merentasi Berbilang Baris dalam Lajur MySQL?

Bagaimana untuk Mencari Nilai Biasa Merentasi Berbilang Baris dalam Lajur MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-22 21:17:16872semak imbas

How to Find Common Values Across Multiple Rows in a MySQL Column?

Mencari Nilai Sepunya dalam Lajur MySQL

Apabila bekerja dengan pangkalan data hubungan seperti MySQL, selalunya perlu untuk mendapatkan semula baris yang berkongsi nilai lajur yang sama. Pertimbangkan senario di mana jadual mengandungi data berikut:

ID Score
1 95
2 100
3 88
4 100
5 73

Masalah: Bagaimanakah kita boleh mendapatkan semula Skor yang muncul dalam kedua-dua baris dengan ID 2 dan 4?

Penyelesaian:

Pertanyaan ini menggunakan GROUP OLEH dan MEMPUNYAI klausa untuk mencapai hasil yang diingini:

SELECT Score
FROM t
GROUP BY Score
HAVING SUM(id = 2) > 0 AND SUM(id = 4) > 0

Penjelasan:

  • KUMPULAN MENGIKUT Skor: Klausa ini mengumpulkan baris mengikut lajur Skor mereka.
  • MEMPUNYAI SUM(id = 2) > 0: Bahagian klausa HAVING ini menyemak sama ada jumlah baris dengan id = 2 lebih besar daripada sifar dalam setiap kumpulan (Skor).
  • DAN SUM(id = 4) > 0: Syarat ini menyemak sama ada jumlah baris dengan id = 4 juga lebih besar daripada sifar dalam kumpulan yang sama.

Keputusan:

Dengan menggabungkan ini dua syarat dalam klausa HAVING, kami hanya mendapatkan Skor yang biasa kepada baris dengan kedua-dua id = 2 dan id = 4. Dalam kes ini, ia mengembalikan nilai 100.

Atas ialah kandungan terperinci Bagaimana untuk Mencari Nilai Biasa Merentasi Berbilang Baris dalam Lajur MySQL?. 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