Danke für die Antwort.
Einen Inner Join hatte ich ja praktisch schon mit dem where s.id = o.id. Das funktioniert auch soweit. Deine Abfrage (die zweite) macht im Ergebniss die gleiche wie meine. Ich bekomme dann ungefähr die folgende Ergebnisstabelle:
Code:
id ip tme name
------------------------------------
1 xyz 1008000 seite1
1 xyz 1007000 seite1
2 xyz 1006000 seite2
1 xyz 1005000 seite1
3 xyz 1004000 seite3
2 xyz 1003000 seite2
D.h. ich bekomme jeden Hit für jede Seite. Ich will aber pro Seite nur den letzten Hit. Es soll also so ausehen:
Code:
id ip tme name
------------------------------------
1 xyz 1008000 seite1
2 xyz 1006000 seite2
3 xyz 1004000 seite3
(Die IP ist im Prinzip unwichtig es könnten also auch verschiedene IPs sein)
Ich habe zwischenzeitlich auch nochmal versucht ein MAX() mit einzubauen, erhalte aber bei der Abfrage:
Code:
SELECT o.id, o.ip, MAX( o.tme ) AS tme, s.name
FROM onlinestate AS o, systems AS s
WHERE o.id = s.id
nur die Fehlermeldung
Code:
#1140 - Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with no GROUP columns is illegal if there is no GROUP BY clause