Mailinglisten-Archive |
Hallo Christian, der Betreff ist etwas lang. Zitiere Christian Victor <christian at victormedia.de>: > Ich habe folgenden Problem. Ich muss eine Art Anwesenheitsliste > programmieren wo für jede Person alle Anwesenheitsdaten gespeichert > werden: > > ID NAME DATUM RAUM > 1 Peter 2004-07-16 1 > 2 Gabi 2004-06-23 3 > 3 Peter 2004-06-17 3 > 4 Gabi 2004-07-01 2 > 5 Rolf 2004-07-07 1 > > > Ich möchte jetzt eine Liste mit allen Personen und Ihrem letzten > Anwesenheitsdatum und dem jeweiligen Raum bekommen. > > Ist das überhaupt in einer Query möglich? Ich habs mit GROUP BY NAME und > > MAX(DATUM) versucht aber dann wirft mir MySQL eine irgendeine > Raumnummer aus der Gruppe aus und nicht immer die des letzten Datums. Du schreibst zwar nicht, was Du probiert hast, aber ich denke, daß es eigentlich recht einfach ist: SELECT name, datum, raum FORM anwesenheit_tabelle WHERE name = variable_0 ORDER BY datum DESC LIMIT 1; DESC bei ORDER BY ist standard, kann also wegfallen. Vielleicht geht auch die folgende Abfrage (sollte von mysql das gleiche wollen). Allerdings weiß ich nicht genau, ob das mit dem HAVING so richtig ist. SELECT name, datum, raum FORM anwesenheit_tabelle WHERE name = variable_0 HAVING datum = MAX(datum); Beste Grüße, Christoph -- Fingerprint=65B7 73B6 5969 AC2B 4572 39A2 0DBC DAC1 3D6A 45B7 email auch: chw- at gmx.de / mai01dzr at ... -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive