WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   MySQL Max-Funktion (http://www.wcm.at/forum/showthread.php?t=107297)

Hussl 31.08.2003 16:49

MySQL Max-Funktion
 
Hallo, hab folgendes Problem:

ich will den höchsten Wert der Spalte FID (eine eindeutige ID) zurückgegeben haben, und zwar aus dem Ergebnis einer Abfrage.
Die Abfrage ist folgende:

SELECT * FROM f_fotos WHERE FID>=" & request.querystring("FID") & " AND KID=1 AND AID=1 AND anzeigen='1' LIMIT 6;

Von diesen sechs Datensätzen bräuchte ich nun die höchste ID...

Hat jemand einen Idee?

Seidl 31.08.2003 18:37

Manual => Beispiel: "SELECT MAX(artikel) AS artikel FROM shop" => Lösung: SELECT MAX(FID) AS MAXFID FROM f_fotos WHERE FID>=" & request.querystring("FID") & " AND KID=1 AND AID=1 AND anzeigen='1' LIMIT 6;

Hussl 01.09.2003 11:08

Ich kanns im moment nicht ausprobieren, aber da bekomm ich nur EINEN datenstatz zurück, oder? ich brauch aber alle 6 und halt ein feld mit der maxID dieser 6 datensätze.

geht das überhaupt in einem schritt?

Seidl 01.09.2003 11:31

Mit Aggregatfunktionen kann das nicht funktionieren. Man kann ja mehrere Aggregatfunktionen in einem Ausdruck verwenden. Wenn du zum Beispiel MIN() und MAX() zugleich verwenden würdest, so käme deine Datenbank bei den zurückzugebenden Datensätzen in arge Nöte :)

Alex1 01.09.2003 12:09

Und wenn Du hinten ein ORDER BY FID, DESC anhängst?

Hussl 01.09.2003 20:45

Seid gegrüßt...

es ist vielleicht nicht die eleganteste methode, aber wie auch immer. bei 6 datensätzen ist das glaub ich vertretbar:

Code:

do until rst.eof
  if rst("FID") > dMax then dMax = rst("FID")
  rst.movenext
loop



Alle Zeitangaben in WEZ +2. Es ist jetzt 00:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag