Rumah > Soal Jawab > teks badan
Saya cuba menetapkan kuantiti maksimum kepada "maks" Ralat berlaku:
Kod ralat: 1111. Penggunaan fungsi kumpulan tidak sah 0.000 saat
SELECT max(count(*)) as max FROM ticket group by fan_fan_id;
Saya tidak pasti apa masalahnya di sini dan saya berbesar hati untuk mendapatkan bantuan di sini - dan saya perlu membetulkannya tanpa pilihan "Had 1"
P粉9492671212024-04-05 09:43:50
SQL tidak membenarkan fungsi agregat bersarang seperti contoh yang anda tunjukkan.
Parameter fungsi agregat mestilah ungkapan skalar, bukan ungkapan agregat.
Anda boleh melakukan apa yang anda mahu:
SELECT MAX(c) FROM (SELECT COUNT(*) AS c FROM ticket GROUP BY fan_fan_id) AS t;
Atau cara lain ialah mengisih mengikut nilai menurun dan mengembalikan kiraan pertama sahaja:
SELECT COUNT(*) AS c FROM ticket GROUP BY fan_fan_id ORDER BY c DESC LIMIT 1;