Select Group By-Frage
Roland
- php
Hallo, ich habe eine Frage zur Select-Anweisung bei einer Msql-Datenbank, die wie folt aufgebaut ist:
id name idnr
Die Felder name und idnr kommen mehrmals vor, das Feld id ist ein Schlüssel, den ich für eine andere Funktion brauche.
Das feld idnr kann mehrmals mit identischem Inhalt vorhanden sein.
Jetzt möchte ich die Anzahl der Einträge nach Häufigkeit der Einsendungen unter gleichem Namen (feld name) zählen, wobei Einträge mit gleichem Namen UND gleicher idnr nur einmal gezählt werden.
Beispiel:
id name idnr
--------------
1 Meier 334
2 Meier 335
3 Meier 334
...Mein select sollte nun als Ergebis in "anzahl" zwei enthalten. Drei von Meier, aber da eine doppelt halt nur zwei.
Mein Select ist aber leider bei dieser Stelle am Ende:
"SELECT name, count(*) AS anzahl FROM alle1_details GROUP BY name ORDER BY anzahl DESC"
...hierbei würde ja alles gezählt.
Wie lautet der zusätzliche Befehl im Select?
Vielen Dank im voraus für eure Hilfe!
Salve,
einfach statt COUNT(*) nimmst du COUNT(DISTINCT idnr)
Prima, herzlichen Dank. Die Anweisung hats gebracht!