Hallo,
ich bastle gerade an einer MySQL-Query, habe aber irgendwie ein Problem mit max()...
^^ Diese Query funktioniert wunderbar. Jetzt hätte ich noch gerne den höchsten Wert des Feldes time aus der Tabelle "posts" mit in jedem Ergebnis.
daher:
Ich habe also MAX(P.time) eingefügt sowie GROUP by P.time, jedoch erhalte ich dann, unabhängig von der Anzahl der Einträge in der Tabelle nur noch ein Ergebnis, eben durch das GROUP by.
Was mache ich falsch, bzw. was muss ich machen, dass "GROUP by" für jedes Ergebnis aus der ersten Tabelle zählt, nicht nur für das gesamte Ergebnis der Query?
habe die manuals abgegrast, jedoch ohne nennenswerten erfolg...
MySQL
übrigens: wenn ich das GROUP by weg lasse erhalte ich die Meldung, dass man die MAX() Funktion nicht mit nicht grupierten Spalten mischen darf ohne das GROUP by statement zu verwenden...
danke für tipps... =)
ich bastle gerade an einer MySQL-Query, habe aber irgendwie ein Problem mit max()...
Code:
"SELECT B.boardid,B.threads,B.name,B.description,P.time,P.userid,P.threadid,U.username,P.time AS time FROM ".PREFIX."boards AS B LEFT JOIN ".PREFIX."posts AS P ON P.boardid=B.boardid LEFT JOIN ".PREFIX."user AS U ON P.userid=U.userid WHERE B.projectid='".$_SESSION['projectid']."' ORDER by B.order";
daher:
Code:
"SELECT B.boardid,B.threads,B.name,B.description,P.time,P.userid,P.threadid,U.username,MAX(P.time) AS time FROM ".PREFIX."boards AS B LEFT JOIN ".PREFIX."posts AS P ON P.boardid=B.boardid LEFT JOIN ".PREFIX."user AS U ON P.userid=U.userid WHERE B.projectid='".$_SESSION['projectid']."' GROUPY by P.time ORDER by B.order";
Was mache ich falsch, bzw. was muss ich machen, dass "GROUP by" für jedes Ergebnis aus der ersten Tabelle zählt, nicht nur für das gesamte Ergebnis der Query?
habe die manuals abgegrast, jedoch ohne nennenswerten erfolg...
MySQL
übrigens: wenn ich das GROUP by weg lasse erhalte ich die Meldung, dass man die MAX() Funktion nicht mit nicht grupierten Spalten mischen darf ohne das GROUP by statement zu verwenden...
danke für tipps... =)
Kommentar