Rumah >pangkalan data >tutorial mysql >Bagaimana untuk menyelesaikan ralat \'Penggunaan fungsi kumpulan tidak sah\' dalam MySQL apabila mencari kiraan rekod maksimum?
Mencari Kiraan Rekod Maksimum dalam MySQL
Dalam MySQL, apabila cuba mencari kiraan rekod maksimum menggunakan max(count(*)) fungsi pengagregatan, anda mungkin menghadapi ralat "Penggunaan fungsi kumpulan tidak sah." Untuk menyelesaikan isu ini, anda perlu mengubah suai pertanyaan untuk menentukan kiraan maksimum dengan betul.
Dalam pertanyaan yang disediakan:
select max(count(*)) from emp1 group by name;
Bilangan fungsi kumpulan(*) digunakan dalam maksimum fungsi, mengakibatkan ralat. Untuk membetulkannya, anda boleh mengubah suai pertanyaan seperti berikut:
SELECT NAME, COUNT(*) as c FROM table GROUP BY name ORDER BY c DESC LIMIT 1
Pertanyaan ini akan terlebih dahulu mengira kiraan rekod untuk setiap nilai unik dalam lajur nama dan menetapkan kiraan kepada lajur baharu bernama c. Ia kemudian mengumpulkan hasil mengikut lajur nama, mengisihnya dalam tertib menurun berdasarkan lajur c dan mengambil hanya baris pertama, yang mengandungi kiraan maksimum untuk mana-mana nama unik.
Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan ralat \'Penggunaan fungsi kumpulan tidak sah\' dalam MySQL apabila mencari kiraan rekod maksimum?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!