Mailinglisten-Archive |
Norbert Pfeiffer schrieb: > Hi Sebastian, > > habe jetzt etwas selbst herausbekommen: > > Man schreibt in der ON-Klausel: "techniken.tID = objects.tID" > Aber trotzdem haben sie eine enorm unterschiedliche Auswirkung > auf das Ergebnis. das ON hat meistens sehr wenig mit dem Ergebnis zu tun, nur insoweit das es bestimmt wie die Datensätze der beiden Tabellen verknüpft werden. > Mit: GROUP BY objects.tID > erhaelt man nur die Zeilen mit COUNT > 0 und dabei ist > es voellig unabhaengig, welcher X-Wert in COUNT(X) steht. mit GROUP BY (objects.tID) erhält man genau für Jede Technik(-ID) die einem Objekt zugeordnet ist eine Ergebnis-Zeile, was auch so zu erwarten ist - dies ist der Zweck von GROUP BY. > Mit: GROUP BY techniken.tID > erhaelt man alle Technik-Zeilen, das Ergebnis ist jedoch logisch - GROUP BY halt ... > stark abhaengig vom X-Wert in COUNT(X). du meinst sicher nur das Ergebnis in der COUNT-Spalte, logisch es hängt vor allem davon ab ob du das COUNT() auf eine Spalte in der techniken oder eine Spalte in der Objekt-Tabelle legst - in deinem Fall benötigst du es auf eine Spalte in der Obejkt-Tabelle, und dort eine Spalte die _KEINE_ NULL-Werte enthällt, welche normalerweise ja die Objects.TID sein sollte! > Mit: COUNT(techniken.tID) und COUNT(*) werden die gleichen > jedoch falschen Werte geliefert. logisch, du willst ja weder die Techniken zählen noch die gesamten Datensätze! sondern nur die Objekte, siehe oben. > Mit: COUNT(techniken.tID) ist man auf der richtigen Seite wohl eher COUNT(objects.TID), (Tippfehler?) und so hatte ich es doch geschrieben in meinem Beispiel. Oder nicht? > Soweit habe ich das jetzt ausgetestet und nun suche ich noch > jemanden, der mir das erklaeren kann. Denn ich habe nicht vor, > mir das alles auswendig zu merken ... ;-) Helfen dir meine Erklärungen oben, oder ist immer noch etwas Klärungsbedürftig? Ich bin gerne Hilfsbereit! :-) -- Sebastian Mendel www.sebastianmendel.de www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive