MAX() von COUNT()

jenno

Erfahrenes Mitglied
Ich habe eine mysql-Abfrage, die lautet im Moment noch so:

PHP:
SELECT COUNT(a.aangifteid) as count, sa.omschrijving 
FROM aangifte as a, statusaangifte as sa 
WHERE a.statusident=sa.statusident 
GROUP BY sa.omschrijving;

Das Ergebnis davon ist:

+--------+--------------+
| countx | omschrijving |
+--------+--------------+
| 1 | behandeld |
| 4 | geopend |
| 1 | klaar |
| 82 | nieuw |
+--------+--------------+

Wie kriege ich jetzt davon nicht alle COUNT(a.aangifteid), sondern nur den grössten count-Wert? Also die nur die Zeile mit 82?

Mit

PHP:
SELECT MAX(COUNT(a.aangifteid)) as count, sa.omschrijving 
FROM aangifte as a, statusaangifte as sa 
WHERE a.statusident=sa.statusident 
GROUP BY sa.omschrijving;

hab ich es schon probiert, das funktioniert leider nicht :(
 
Zuletzt bearbeitet:
Hi

also wenn es jetzt Access wäre, würde ich den Top 1 in der Anweisung setzen und im Order by den count sortieren.

ORDER BY count(Feld) DESC;

In mySQL würde das bestimmt mit einem limit Wert funktionieren.
 
Hallo Luzie,

danke für Deine Antwort, hab daraufhin gedanklich auch von meinem Weg loslassen können und jetzt eine Lösung (auch wenn ich sie nicht sooo schön finde) gefunden.

Wie Du sagst nämlich einfach das Ganze nach count DESC sortieren und dann LIMIT 1. Vielen Dank

Aber mit Access gibts (find ich) ne viel schönere Lösung. Nämlich

SELECT MAX(count) FROM (
SELECT COUNT(a.aangifteid) as count, sa.omschrijving FROM aangifte as a, statusaangifte as sa WHERE a.statusident=sa.statusident GROUP BY sa.omschrijving
);

Sieht zwar umständlicher aus, aber wäre für meinen Einsatz etwas "eleganter". Naja, aber was solls. Letzlich geht es ja auch um ein ordentliches Ergebnis!
 
Hi jenno,

nun, wenn man die Möglichkeit hat, Bezug auf eine definierte Abfrage oder View zu nehmen oder einen Subselect nutzen zu kann, ist es vom reinen Verstehen her auch einfacher, weil man sich dies als Tabelle dann eher vorstellen kann. Ob jetzt schöner...ich nutze den Top x sehr sehr oft, schon allein aus dem Grunde, um nicht alle DS laden zu müssen.

Es gibt viele schöne Wege nach Rom, Abkürzungen, Autobahnen aber alle müssen, wenn man am Boden bleibt, von Norden her durch diese Alpen.:) :)
 
Zurück