Hallo,
ich habe folgendes Problem: in meiner Tabelle werden die Datensätze mit einer forlaufenden ID und einer ID, die aus einer anderen Tabelle kommt, geschrieben.
Die Tabelle sieht zusammengefasst so aus:
id | id_datensatz | bezeichnung | createtime
1 | 1001 | test | 03.03.2011
2 | 1001 | test2 | 04.03.2011
3 | 1002 | hier | 02.03.2011
4 | 1001 | spaß | 07.03.2011
5 | 1002 | tier | 05.03.2011
Mit einer Abfrage möchte ich nun nach den "id_datensatz" gruppieren und smoit den Datensatz bekommen, der innherhalb der Grupierung das höchste (letzte Änderung) createtime hat.
Für das Beispiel möchte ich folgendes bekommen:
4 | 1001 | spaß | 07.03.2011
5 | 1002 | tier | 05.03.2011
Meine bisherige SQL-Abfrage:
Nur das max createtime wäre kein Problem, jedoch möchte ich dann auch zu dem passenden Datensatz die entsprechenden Werte haben. Leider komme ich hiermit nicht vorran. Vielleicht kann mir jemand mit meinem Problem helfen!?
Vielen Dank
ich habe folgendes Problem: in meiner Tabelle werden die Datensätze mit einer forlaufenden ID und einer ID, die aus einer anderen Tabelle kommt, geschrieben.
Die Tabelle sieht zusammengefasst so aus:
id | id_datensatz | bezeichnung | createtime
1 | 1001 | test | 03.03.2011
2 | 1001 | test2 | 04.03.2011
3 | 1002 | hier | 02.03.2011
4 | 1001 | spaß | 07.03.2011
5 | 1002 | tier | 05.03.2011
Mit einer Abfrage möchte ich nun nach den "id_datensatz" gruppieren und smoit den Datensatz bekommen, der innherhalb der Grupierung das höchste (letzte Änderung) createtime hat.
Für das Beispiel möchte ich folgendes bekommen:
4 | 1001 | spaß | 07.03.2011
5 | 1002 | tier | 05.03.2011
Meine bisherige SQL-Abfrage:
PHP Code:
SELECT * , max( createtime )
FROM `tabelle`
GROUP BY id_datensatz
Vielen Dank
Comment