Max() ?

FredS

Grünschnabel
Ich möchte aus einer Tabelle den größten Wert ermitteln.
Ich dachte das geht so:

SELECT name, MAX(tore) FROM Fussballer
GROUP BY name;

Wenn ich das aber so mache, bekomme ich alle Einträge der Tabelle zurück. Gebe ich nur SELECT MAX(tore) FROM Fussballer; ein, dann bekomme ich immerhin den größten Wert zurück.
Aber ich möchte auch den Namen dazu ausgeben. Warum geht das nicht so wie ich's versucht habe?
 
Unter MySql könntest Du folgendes tun:
SELECT name, tore FROM Fussballer
ORDER BY tore Desc LIMIT 1

das liefert dann nur einen Eintrag, nämlich einen mit den meisten Toren.

Problematisch ist es aber, wenn bspw. Meier und Müller beide die meisten Tore 23 geschossen haben

vop
 
Oh jo, das geht. :)

Ich dachte eigentlich, dass meine Methode auch gehen sollte. Logisch gesehen sollte es eigentlich gehen, hmm.. Aber ich programmiere SQL auch erst seit einer Woche, habe also noch nicht so viel Ahnung...
 
Ich bin auch noch nicht der grosse Meister :-)

Ich würde es dann halt mit 2 SELECTS machen.

PHP:
// Also zuerst so
SELECT MAX(tore) FROM Fussballer

// Danach dann dies
SELECT name, tore FROM Fussballer WHERE tore='variable für MAX Wert' ORDER BY tore DESC


oder du machst es halt das er alle anzeigt und baust ne Schleife ein. Also setzt am Anfang eine Variable = MAX Wert und fragst den nächsten Eintrag ab ob er auch diesen Wert hat, wenn weniger halt aufhören. ;-)
 
Zurück