Hallo!
Für ein Forum (basierend auf MySQL 5.0.18) habe ich mir folgende Abfrage ausgedacht:
Funktioniert auch Prima. Dauert aber teilweise bis zu 5 Sekunden!
Kann man es irgendwie beschleunigen?
Zur Info:
In der Post Tabelle sind 725 Einträge.
In der Topic Tabelle 70 Einträge
Gruß
Christian
Für ein Forum (basierend auf MySQL 5.0.18) habe ich mir folgende Abfrage ausgedacht:
Code:
SELECT
TOPIC.TopicID AS TopicID,
FirstPOST.Thema AS TopicThema,
FirstPOST.Autor AS TopicAutor,
FirstPOST.Icon AS TopicIcon,
TOPIC.Hits AS TopicHits,
TOPIC.Wichtig AS TopicWichtig,
TOPIC.Geschlossen AS TopicGeschlossen,
LastPOST.Datum AS LastPostDate,
LastPOST.Autor AS LastAutor
FROM
forum_topics AS TOPIC JOIN
forum_posts AS FirstPOST ON (TOPIC.TopicID = FirstPOST.TopicID) JOIN
forum_posts AS LastPOST ON (TOPIC.TopicID = LastPOST.TopicID)
WHERE
FirstPOST.Datum =
(SELECT MIN(Datum) FROM forum_posts WHERE TopicID = FirstPOST.TopicID AND Zeigen = 'true')
AND
LastPOST.Datum =
(SELECT MAX(Datum) FROM forum_posts WHERE TopicID = FirstPOST.TopicID AND Zeigen = 'true')
AND
TOPIC.Zeigen = true
ORDER BY
TOPIC.Wichtig ASC,
LastPOST.Datum DESC
LIMIT
0, 15
Funktioniert auch Prima. Dauert aber teilweise bis zu 5 Sekunden!
Kann man es irgendwie beschleunigen?
Zur Info:
In der Post Tabelle sind 725 Einträge.
In der Topic Tabelle 70 Einträge
Gruß
Christian