Rumah  >  Soal Jawab  >  teks badan

Operasi MySQL untuk mendapatkan fungsi jumlah maksimum

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粉139351297P粉139351297178 hari yang lalu392

membalas semua(1)saya akan balas

  • P粉949267121

    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;

    balas
    0
  • Batalbalas