mySQL Abfrage optimieren

BadMatt

Erfahrenes Mitglied
Hey,
Ich beschäftige mich derzeit mit der fortgeschrittenen mysql handhabung, und würde ma gerne wissen, ob sich sowas noch optimieren ließe, wenn ja wie, dass ich einmal mal ne Musterlösung vorliegen habe, und mich an dieser orientieren kann.

PHP:
    $sql    = "SELECT 
				 heute.hits as today, 
				 gestern.hits as gestern, 
	             heute.total, 
				 COUNT(u.ip) as online,
				 COUNT(g.ip) as g_online
			   FROM 
			     ".$this->db." as heute
			   LEFT JOIN 
			     ".$this->db_user." as u
			   ON 
			     u.onl = '1' AND u.user != ''
			   LEFT JOIN 
			     ".$this->db_user." as g 
			   ON 
			     g.onl = '1' AND g.user = ''
			   LEFT JOIN 
			     ".$this->db." as gestern 
			   ON 
			     gestern.date = '".date("10.m.Y")."'
			   WHERE 
			     heute.date = '".$this->date."' 
			   GROUP BY 
			     u.ip, g.ip;";

(Sry, dass ich derzeit hier viel leben in das Forum bring mit meinen Topics :P)
 
Geduld ist eine Tugend.

Also fang nicht gleich an Zeter und Mordio zu schreien, wenn
mal nicht sofort auf deine Frage geantwortet wird. Vielleicht
ist gerade niemand Online der die Antwort auf deine Frage oder
es weiß einfach niemand die Antwort. Auch soetwas kommt vor
und dann nöle bitte nicht rum. Versuche es einfach selber
nochmal.

Ich denke ein bisschen ist rum :P

Push =)
 
Ich bin mittlerweile sehr vorsichtig mit dem Thema "Musterlösung" hier geworden.
Und auch diesen Thread schaue ich mir schon lang an und mir fällt nicht mehr ein, als dass deine Normalisierung scheinbar zu weit gegangen ist (eigene Meinung).
3 Joins hintereinander und noch Funktionen dazwischen (COUNT) und sogar GROUP BY - vielleicht solltest du versuchen beim abspeichern der Daten ein bisschen zusammenzufassen.
 
@ZodiacXP:
Das gestern könnt man vlt. immer noch übernehmen in den Aktuellen Tag, aber der Rest ist so schon zusammengefasst.

Kann sich nicht ma einer erbarmen und mir verraten wie ich das am besten löse, oder ist das so schon so gut, dass keiner was besseres weiss :P ?
 
Zurück