|  |  | |
|  |  | 
| 
 | |||||||
| Programmierung Rat & Tat für Programmierer | 
|  | 
|  | Themen-Optionen | Ansicht | 
|  15.10.2013, 01:04 | #1 | 
| Schon länger dabei  |  MySQL Frage: FullJoin 2er Tabellen, Reihenfolge abhängig? Fragen an die DB Experten: Sollte bei einem Fulljoin nicht die Reihenfolge der Tabellen egal sein? Warum funtioniert dieses Beispiel nicht (Keine Fehlermeldung, es werden aber nur 0 Datensätze ausgegeben). Code: SELECT t.text_title, t.text_key, t.text_group, t.field, tts.text FROM text t, text_to_stores tts where t.status = 1 and tts.key = t.text_key and tts.store_id = 101 order by t.sort Code: SELECT t.text_title, t.text_key, t.text_group, t.field, tts.text FROM text_to_stores tts, text t where t.status = 1 and tts.key = t.text_key and tts.store_id = 101 order by t.sort Kann mir jemand eine Erklärung dazu geben? Hab mit dem Blödsinn ne Stunde versch...en. 
				____________________________________ www.mankra.com Meine private Site | 
|   |   | 
|  15.10.2013, 01:37 | #2 | 
| Aussteiger  |   lies dir mal die mysql-referenz zu join durch   http://dev.mysql.com/doc/refman/5.1/de/join.html http://dev.mysql.com/doc/refman/5.1/...imization.html 
				____________________________________ Praktizierender Eristiker No hace falta ser un genio para saber quién dijo eso. Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein. | 
|   |   | 
|  15.10.2013, 01:43 | #3 | 
| Schon länger dabei  |   Kenn ich natürlich, weiß jetzt nicht, wonach ich suchen sollte. Bei dieser Schreibweise handelt es sich ja um ein Full-Join. Bei nem Outer Join, wärs schon klar (oder auch nicht, wenn ich jetzt so nachdenk, da ich sowieso nur die Datensätze brauch, wo es volle Datensätze gibt). Ich verstehe nicht, warum Beispiel eins 0 Zeilen als Ergebniss erzeugt. 
				____________________________________ www.mankra.com Meine private Site | 
|   |   | 
|  16.10.2013, 12:51 | #4 | |
| Aussteiger  |   ich beziehe mich auf diesen punkt der doku: Zitat: 
 was mir noch einfallen würde: probier als erste die verbindungs-bedingung zw. den beiden tabellen ... dadurch sollte der optimizer beim parsen des statements jedenfalls zuerst erkennen, dass er beide tabellen für ein korrektes ergebnis verbinden sollte  ... dann sollte die reihenfolge der tabellen auch unerheblich sein ... nebenbei macht das so ein statement auch leichter lesbar - vor allem bei umfangreichen abfragen mit vielen tabellen hilft das sehr ... 
				____________________________________ Praktizierender Eristiker No hace falta ser un genio para saber quién dijo eso. Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein. | |
|   |   | 
|  16.10.2013, 12:55 | #5 | 
| Schon länger dabei  |   Also  Code: SELECT .... FROM text t, text_to_stores tts where tts.key = t.text_key and t.status = 1 and tts.store_id = 101 
				____________________________________ www.mankra.com Meine private Site | 
|   |   | 
|  16.10.2013, 12:59 | #6 | 
| Schon länger dabei  |   Aber jetzt hab ichs: Mit Code: FROM `text` t, text_to_stores tts D.h. kein Logigfehler, sondern "nur", daß die DB den Tabellen Namen text als Schlüsselwort interpretiert. Ohne Fehlermeldung hab ich an dies nicht gedacht. 
				____________________________________ www.mankra.com Meine private Site | 
|   |   | 
|  17.10.2013, 01:17 | #7 | 
| Aussteiger  |   solch triviale fehler sind immer wieder witzig   
				____________________________________ Praktizierender Eristiker No hace falta ser un genio para saber quién dijo eso. Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein. | 
|   |   | 
|  | 
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| 
 | 
 |