Hallo,
ich bin ein totaler SQL-Neuling/Stumpfkopf und scheitere an einem sehr einfachen Problem, bitte nicht lachen.
Es geht um folgende Tabelle:
Tabelle obst:
name | preis | timestamp
Apfel | 45.00 | 1262731719
Birne | 94.96 | 1262731719
Orange | 19.95 | 1262731719
Kiwi | 15.50 | 1262731719
Kiwi | 14.50 | 1262732578
Birne | 94.98 | 1262733058
Kiwi | 15.50 | 1262767427
Kiwi | 14.50 | 1262768481
Ich möchte als Ergebnis zu jedem Obst den aktuellsten Preis haben, also die Zeile, mit der größten Timestamp.
Versucht habe ich ganz laienhaft einfach folgendes:
SELECT name, preis, MAX( ts )
FROM obst
GROUP BY name
Dann erhalte ich zwar die neuesten Timestamps, der Preis passt aber nicht dazu, die Kiwi dürfte mit dieser Timestamp ja nur 14,50 kosten:
Apfel | 45.00 | 1262731719
Birne | 94.96 | 1262733058
Kiwi | 15.50 | 1262768481
Orange | 19.95 | 1262731719
Wie macht man sowas?
Ich nutze übrigens MySQL 5, falls das von Bedeutung ist.
Danke fürs Lesen!
Gruß
Thomas