Michael Hansen wrote:
> Jeg udvikler på et forum der lavet i php. Alle indlæg i forummet gemmes i
> en mySql tabel. Trådene i forummet er kædet sammen ved hjælp af rootID og
> parentID. Altså hvert indlæg har et unikt rootID. Når dette indlæg
> besvares så tildeles svarindlægets parentid værdien af id fra det indlæg
> der svares på.
>
> Det jeg har brug for at lave er en liste med alle startindlæg, som er
> sorteret således at det indlæg der sidst er besvaret skal stå øverst på
> listen.
>
> Mit spørgsmål er nu hvordan min SQL skal se ud. Jeg ved så meget at jeg
> skal trække de rækker ud hvor parentID=0 da det er alle med startindlæg.
> Men hvordan får jeg det sorteret i den rigtige rækkefølge ???
En af sikkert mange muligheder er at lave et self-join.
SELECT DISTINCT f1.rootID FROM forum AS f1 LEFT JOIN forum AS f2 ON
f1.rootID = f2.parentID WHERE f1.parentID=0 ORDER BY f2.date
En anden og sikkert mere effektiv metode er at hive det hele ind i php og
ordne det vha. array sortering.
For en anden gangs skyld hører sådanne spørgsmål hjemme i d.e.database.
--
mvh Jakob Kirkegaard
->
http://jakir.dk