Hallo !
Ein Beispiel:
Ich kriege mit dieser SQL ein RecordSet, welches 2 Datensätze enthält. Der Erste hat die "fldID" 690 und der Zweite die 691. Ich würde nun erwarten, egal in welchem Datensatz ich mich in diesem RecordSet aufhalte, daß ich bei dem Feld "MaxfldID" immer 691 zurückbekomme. Dem ist aber nicht so. Ich bekomme eigentlich immer nur die aktuelle "fldID" zurück.
Habe ich einen falschen Syntax benutzt, oder ist mein Denkansatz einfach falsch??
Ich tippe auf letzteres. ;-)
Wenn ich nicht völlig falsch liege, liefert max() hier den höchsten Wert _innerhalb_ der Gruppierung, nicht den der gesamten Ergebnismenge. Versuch es einmal mit anderen Aggregat(?)-funktionen wie z.B. count() oder sum(), dann sollte dies schnell klar werden.
Wenn du den Höchstwert unbedingt bereits vor der Ausgabe des letzten Datensatzes brauchst, hilft m.E. nur, eine eigene selct-Abfrage vorauszuschicken, ansonsten müsste der letzte zurückgegebene Datensatz gleichzeitig den Höchstwert liefern.
HTH
Gruß,
kerki