Mailinglisten-Archive |
Andreas Filz wrote: > trotz des mysql handbuches auf little-idiot.de verstehe ich die join > funktion nicht so recht,da ich dort php kein beispiel fuer eine > verknuepfte tabelle mit abfrage gefunden hatte. kann mir jemand > erklaeren wie eine solche abfrage aufgebaut ist? Hi, mit der Join-Funktion verknüpfst du zwei Tabellen. Beispielsweise hast du eine Tabelle mit Kundendaten: kunden -------- ID | Vorname | Name ---------------------- 1 | Hans | Meier 2 | Fritz | Müller ... Dann hast du zum Beispiel noch eine zusätzliche Tabelle für die weiteren Daten. Diese hast du ausgelagert in "kundendaten", weil du diese nur selten brauchst und das so einige Geschwindigkeitsvorteile bringt: kundendaten --------- ID | strasse | plz | ort ----------------------------- 1 | Teststr.1 | 12354 | Testhausen 2 | Strasse 4 | 81232 | Null-Ort ... Das ganze ist gut und schön. Allerdings möchtest du vielleicht mal einen Bericht über die Kundendaten machen, wobei eben Vorname, Name UND Strasse, PLZ etc aufgeführt sind. Dazu machst du einen JOIN: SELECT * FROM kunden JOIN kundendaten USING(id); Also zur Beschreibung: SELECT * FROM kunden dürfte klar sein -> Alle Datensätze aus der Tabelle "kunden" werden ausgelesen. Dann kommt der interessante Teil: Du verbindest durch das JOIN die Tabelle "kunden" mit der Tabelle "kundendaten", und zwar dort, wo die beiden "ID"-Felder gleich sind (USING(id)). Damit wird z.B. für Hans Meier als Zusatzdaten ausgelesen: "Teststr. 1, 12345 Testhausen ..." Am Ende sieht das so aus: SELECT * FROM kunden JOIN kundendaten USING(id); id | vorname | name | strasse | plz | ort -------------------------------------- 1 | Hans | Meier | Teststr.1 | 12345 | Testhausen .... Damit steht also eine virtuelle Tabelle, die sich aus den beiden realen Tabellen zusammensetzt... Uff, ich hab jetzt aber viel gelabert *ggg* Hoffe, es hat was genützt und ich habe helfen können.... Cu, Ithamar Garbe
php::bar PHP Wiki - Listenarchive