phpbar.de logo

Mailinglisten-Archive

[php] [etwas OT] DB-Zeilen "filtern"

[php] [etwas OT] DB-Zeilen "filtern"

Manuel Hossfeld lists_(at)_hossfeld.de
Thu, 1 Jul 1999 12:57:02 +0200


Hi Rainer,

> teste mal:
> 
> SELECT ..., MAX(version) GROUP BY id asc

Genial! Das ist es... Vielen dank!

Das genaue Statement sieht bei mir dann letztenendes so aus:

SELECT *,MAX(version) AS version FROM documents GROUP BY doc_id ASC;

Funktioniert prächtig! Und wenn ich doch mal alle versionen haben will, lasse
ich einfach das "max(version)" und "group by doc_id" weg.

Noch schöner wäre es nur noch, wenn ich jetzt auch kapieren würde, WARUM das so
geht. Mir ist zwar die Funktionsweise der SQL-Befehle "max()" und "group by"
prinzipiell klar - aber ich wäre jetzt nie auf die Idee gekommen, die beiden in
der Art und Weise zu kombinieren.
Also... "group by" sorgt dafür, daß jede doc_id nur einmal angezeigt wird, okay.
Aber wieso funktioniert das mit MAX()? MAX(version) alleine zeigt ja einfach nur
den Datensatz mit der höchsten Versionsnr. INSGESAMT an...

Mmmh... <grübel> Ich würd´s echt gern verstehen. Wer hilft mir, die Bäume
beiseite zu schieben und den Wald wieder zu sehen? ;-)

CU,
Manuel


php::bar PHP Wiki   -   Listenarchive