Menapis mengikut Kiraan Kumpulan
Dalam SQL, adalah mungkin untuk mengumpulkan hasil dan menapis berdasarkan bilangan baris dalam setiap kumpulan. Ini boleh dicapai menggunakan klausa HAVING.
Pertimbangkan keperluan berikut:
Pernyataan Masalah:
Adakah mungkin untuk mengumpulkan hasil dan kemudian tapis mengikut bilangan baris dalam kumpulan itu? Contohnya:
SELECT * FROM mytable WHERE COUNT(*) > 1 GROUP BY nameSalin selepas log masuk
Penyelesaian:
Klausa HAVING membenarkan kami menggunakan penapis pada fungsi agregat. Dalam kes ini, kita boleh menapis pada fungsi agregat COUNT(*) untuk memilih kumpulan dengan lebih daripada satu baris. Sintaks yang betul ialah:
SELECT name, COUNT(*) FROM mytable GROUP BY name HAVING COUNT(*) > 1
Pertanyaan ini akan mengembalikan semua nama unik dan kiraan baris yang dikaitkan dengan setiap nama, dengan kiraan lebih besar daripada 1.
Atas ialah kandungan terperinci Bolehkah Penapis SQL Keputusan Dikumpulkan Berdasarkan Kiraan Baris?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!