Hallo,
nachdem ich nun ein wenig SQL Selects begriffen habe stehe ich vor folgendem Problem.
In einer Tabelle hab ich eine Statuskennung 'status', die ID eines (PC) Datensatzes einer anderen Tabelle und einen Timestamp. Ich möchte als Ergebnis alle Felder aber nur mit dem neusten timestamp je pc.
Tabelle:
statusid | status | pc | timestamp
--------------+--------------+-------+-----------------
1 | 1 | 1 | 2008-01-09 13:15:00
2 | 1 | 2 | 2008-01-09 13:18:00
3 | 1 | 3 | 2008-01-09 13:20:00
4 | 1 | 4 | 2008-01-09 13:22:00
5 | 2 | 1 | 2008-01-09 13:30:00
Ziel:
statusid | status | pc | timestamp
--------------+--------------+-------+-----------------
2 | 1 | 2 | 2008-01-09 13:18:00
3 | 1 | 3 | 2008-01-09 13:20:00
4 | 1 | 4 | 2008-01-09 13:22:00
5 | 2 | 1 | 2008-01-09 13:30:00
Ich bekomme es einfach nicht hin, habe folgendes versucht
SELECT MAX(timestamp), statusid, status, pc FROM tabelle GROUP BY pc und vieles mehr, ich verzweifele bald:-(
Sicherlich ist es ganz einfach, oder nicht?
Gruß
Sascha
nachdem ich nun ein wenig SQL Selects begriffen habe stehe ich vor folgendem Problem.
In einer Tabelle hab ich eine Statuskennung 'status', die ID eines (PC) Datensatzes einer anderen Tabelle und einen Timestamp. Ich möchte als Ergebnis alle Felder aber nur mit dem neusten timestamp je pc.
Tabelle:
statusid | status | pc | timestamp
--------------+--------------+-------+-----------------
1 | 1 | 1 | 2008-01-09 13:15:00
2 | 1 | 2 | 2008-01-09 13:18:00
3 | 1 | 3 | 2008-01-09 13:20:00
4 | 1 | 4 | 2008-01-09 13:22:00
5 | 2 | 1 | 2008-01-09 13:30:00
Ziel:
statusid | status | pc | timestamp
--------------+--------------+-------+-----------------
2 | 1 | 2 | 2008-01-09 13:18:00
3 | 1 | 3 | 2008-01-09 13:20:00
4 | 1 | 4 | 2008-01-09 13:22:00
5 | 2 | 1 | 2008-01-09 13:30:00
Ich bekomme es einfach nicht hin, habe folgendes versucht
SELECT MAX(timestamp), statusid, status, pc FROM tabelle GROUP BY pc und vieles mehr, ich verzweifele bald:-(
Sicherlich ist es ganz einfach, oder nicht?
Gruß
Sascha