Hallo
Ist aber aus Performance-Gründen wünschenswert. Eine Abfrage mit simplen JOINs, die vom DB-Server entsprechend optimiert werden können, wäre der Idealfall.
Nein, nicht unbedingt. Vergiß nicht Rouvens Bemerkung: Produkt! Die Anzahl der
zu betrachtenden Datensätze kann schnell ausufern.
Überleg doch mal, wenn du dir das komponentenorientiert vorstellst, dann hast du eine Komponente, die sich mit der Ausgabe des Blogs befasst,
und eine weitere, die sich mit der Ausgabe von Tagclouds befasst.Daran auch, sobald geklärt ist, wie die Tags gespeichert werden.
Logischerweise hättest du dann zwei Abfragen und das wäre völlig in Ordnung.
Hier kommt z. B. die Auflistung mehrerer Blogeinträge auf einer Seite ins Spiel. Für jeden Eintrag (also beispielsweise 10 Einträge pro Seite) noch mal eine Abfrage für die Tags - das macht dann schon 1+10=11 Abfragen.
Wo ist das Problem? Blogeintrag und Tags haben eine 1:n-Beziehung.
Und für Deine Tag-Cloud, da benötigst Du normalerweise doch die Häufigkeiten der Tags, tuts ein simples SELECT tag, COUNT(tag) AS anzahl FROM ...
. Das ist eine einzige Abfrage für die Tag-Cloud. Und davon hat man
doch nur eine, oder?
Freundliche Grüße
Vinzenz