phpbar.de logo

Mailinglisten-Archive

Sortierproblem

Sortierproblem

Ralf Eggert mysql-de_(at)_lists.bttr.org
Sun, 14 Apr 2002 17:28:54 +0100


Hallo Liste,

ich stehe gerade irgendwie auf dem Schlauch. Ich habe folgende Tabelle
(vereinfacht dargestellt) in der Anfragen abgelegt werden:

anf_id          mediumint(8)
anf_haupt_id    mediumint(8)
anf_status      enum('neu', 'bearbeitet', 'abgeschlossen')
anf_datum       datetime

Der Bearbeiter soll die Anfragen speichern koennen, wobei bei jedem
Speichern der aktuelle Stand als neuer Datensatz gesichert wird, um
spaeter eine Aenderungshistorie zu erhalten. Ich weiss, dass man dies
auch anders loesen kann, momentan ist es aber so, dass fuer jeden
Speicherschritt ein neuer Eintrag in der Tabelle erfolgt.

Die Tabelle ist in etwa so gefuellt.

anf_id    anf_haupt_id    anf_status      anf_datum
==============================================================
1         1               neu             2002-04-14 15:15:15
2         2               neu             2002-04-14 15:16:10
3         1               bearbeitet      2002-04-14 15:17:29
4         4               neu             2002-04-14 15:18:51
5         2               bearbeitet      2002-04-14 15:20:54
6         1               abgeschlossen   2002-04-14 15:21:26

In einer Uebersichtsseite moechte ich nun fuer jede Anfrage jeweils den
aktuellsten Speicherstand haben. Es sollen also folgende Saetze gelesen
werden (sortiert nach Datum):

anf_id    anf_haupt_id    anf_status      anf_datum
==============================================================
6         1               abgeschlossen   2002-04-14 15:21:26
5         2               bearbeitet      2002-04-14 15:20:54
4         4               neu             2002-04-14 15:18:51

Leider bekomme ich mit folgender Abfrage nicht das gewuenschte 
Ergebnis. Er selektiert teilweise eben nicht die letzte Aenderung einer
Anfrage:

  SELECT anf_id, anf_haupt_id, anf_datum, anf_status 
  FROM fg_anfrage 
  WHERE anf_id > 0 
  GROUP BY anf_haupt_id
  ORDER BY anf_datum DESC

Irgendwie stehe ich auf dem Schlauch und habe auch schon mit HAVING
oder WHERE MAX() usw. herumgespielt, aber das ergibt Fehlermeldungen,
keine Daten oder auch falsche Daten. Kann mir jemand vielleicht auf die
Spruenge helfen?

Danke und Gruss,

        Ralf

-- 
_____________________________________________
  In-Greece.de - die Griechenlandcommunity
_________ http://www.in-greece.de/ __________

---
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive