Menghimpun dan Menapis mengikut Kiraan
Ada kemungkinan untuk mengagregatkan hasil dengan mengira baris dalam kumpulan dan kemudian menapis keputusan berdasarkan kiraan. Anda boleh mencapai ini menggunakan klausa HAVING, yang membolehkan anda menggunakan syarat penapis pada fungsi agregat.
Penggunaan:
Pertanyaan berikut menunjukkan cara menggunakan HAVING untuk menapis keputusan mengikut kiraan:
SELECT name, COUNT(*) FROM mytable GROUP BY name HAVING COUNT(*) > 1
Dalam pertanyaan ini, kami mula-mula mengumpulkan baris dalam 'mytable' dengan lajur 'nama'. Fungsi agregat COUNT(*) mengira bilangan baris dalam setiap kumpulan. Selepas itu, klausa HAVING menapis keputusan untuk hanya memasukkan kumpulan dengan kiraan lebih daripada 1.
Contoh:
Pertimbangkan jadual berikut:
name |
---|
John |
Mary |
John |
Jane |
Jane |
Mark |
Pertanyaan di atas akan mengembalikan hasil berikut:
name | COUNT(*) |
---|---|
John | 2 |
Jane | 2 |
Seboleh-bolehnya lihat, hanya kumpulan 'John' dan 'Jane' yang dikembalikan kerana mereka mempunyai kiraan lebih daripada 1.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menapis Kumpulan Berdasarkan Kiraan Baris Selepas Mengumpulkan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!