Hallo, angenommen ich hab eine Webseite, die ein Menü darstellt, wobei die Menüpunkte aus einer Tabelle (mysql) ausgelesen werden. Zusätlich soll hinter jedem Menüpunkt eine Zahl dargestellt werden, wieviel Beiträge in der Kategorie einsortiert sind. Ich hab das momentan so gelöst, dass eine query-abfrage gebraucht wird, um die Tabelle der Kategorien zu laden und für jede Kategorie gibt es eine Query-Abfrage, um die Anzahl der Beiträge in dieser Kategorie zu bestimmen. Meine Frage ist jetzt ... Ist das sinnvoll oder nicht? Es sind bei z.B. 12 Kategorieen bei jedem Seitenaufbau 13 SQL-Queries notwendig, nur um das Menü darzustellen. Hat jemand eine Ahnung, ob das Normal ist das so zu machen? Oder ist das umständlich und erzeugt viel Last auf dem Server? Kenn mich mit den Internas von mysql nicht besonders gut aus und weiß auch nicht, wie effizient und gecached usw die Abfragen werden. Danke für eure Hilfe! Grüße Gast
Also eine Tabelle mit 2 Spalten (Menüpunkte und Summe der Beiträge) sollte man mit einer einzigen Abfrage schaffen.. select menuepunkt, count(beitraege) from ... group by menuepunkt
Mit GROUP BY und COUNT() kannst du das auf eine Abfrage reduzieren. Schaden wird es nicht, viel sparen wirst du damit aber vermutlich auch nicht.
Das lässt sich mit einem mehr oder weniger geschickten JOIN und etwas GROUP mit einer Anfrage erschlagen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.