mysql, Abfrage einer Menüstruktur, Unterseiten – SELFHTML-Forum Forum als Ergänzung zum SELFHTML-Wiki und zur Dokumentation SELFHTML https://forum.selfhtml.org/self mysql, Abfrage einer Menüstruktur, Unterseiten Fri, 01 Apr 11 13:34:32 Z https://forum.selfhtml.org/self/2011/apr/1/mysql-abfrage-einer-menuestruktur-unterseiten/1502453#m1502453 https://forum.selfhtml.org/self/2011/apr/1/mysql-abfrage-einer-menuestruktur-unterseiten/1502453#m1502453 <p>Abfrage einer Menüstruktur.#</p> <p>Ich habe Seiten und Unterseiten, die ich den jeweiligen Hauptseiten zugeordnet habe.</p> <p>Aufbau meiner Tabelle</p> <p>ID ! SEITENTITEL  ! VON<br> 1  ! Wetter       ! 0<br> 2  ! Sonnenschein ! 1<br> 3  ! Regen        ! 1<br> 4  ! Meer         !  0<br> 5  ! Fisch        !4</p> <p>Die Seiten würde ich so abfragen:</p> <p>SELECT id, seitentitel FROM tabelle WHERE id>0 ORDER BY id<br> aber so bekomme ich nur die Haupttitel, bei denen „VON = 0“ ist.</p> <p>Wetter<br> Meer</p> <p>Wie kann ich es bewerkstelligen, das auch die Unterseiten in meine Ausgabe einbezogen werden. Das das Ergebnis dieses wäre:</p> <p>Wetter<br> Wetter -> Sonnenschein<br> Wetter -> Regen<br> Meer<br> Meer   -> Fisch</p> <p>Für Informationen die zu Lösung meines Problemes führen ist eine Belohnung von 1.000.000 Dankeschöns ausgesetzt!</p> <p>Karsten</p> mysql, Abfrage einer Menüstruktur, Unterseiten Fri, 01 Apr 11 15:42:58 Z https://forum.selfhtml.org/self/2011/apr/1/mysql-abfrage-einer-menuestruktur-unterseiten/1502455#m1502455 https://forum.selfhtml.org/self/2011/apr/1/mysql-abfrage-einer-menuestruktur-unterseiten/1502455#m1502455 <p>hi Karsten,</p> <blockquote> <p>Für Informationen die zu Lösung meines Problemes führen ist eine Belohnung von 1.000.000 Dankeschöns ausgesetzt!</p> </blockquote> <p>Die Lösung heißt Normalisierung. Die musst Du nicht unbedingt auf die allerletzte Normalform bringen, aber für Dein Modell, was eine 1:n Beziehung darstellt, würde ich zwei Tabellen anlegen, die Abfrage wird dann ein left outer join, der auch gar nicht soo schwer verständlich ist.</p> <p>Hotti</p> mysql, Abfrage einer Menüstruktur, Unterseiten Sat, 02 Apr 11 09:58:20 Z https://forum.selfhtml.org/self/2011/apr/1/mysql-abfrage-einer-menuestruktur-unterseiten/1502454#m1502454 https://forum.selfhtml.org/self/2011/apr/1/mysql-abfrage-einer-menuestruktur-unterseiten/1502454#m1502454 <p>hi,</p> <blockquote> <p>Ich habe Seiten und Unterseiten, die ich den jeweiligen Hauptseiten zugeordnet habe.</p> <p>Aufbau meiner Tabelle</p> <p>ID ! SEITENTITEL  ! VON<br> 1  ! Wetter       ! 0<br> 2  ! Sonnenschein ! 1<br> 3  ! Regen        ! 1<br> 4  ! Meer         !  0<br> 5  ! Fisch        !4</p> <p>Die Seiten würde ich so abfragen:</p> <p>SELECT id, seitentitel FROM tabelle WHERE id>0 ORDER BY id<br> aber so bekomme ich nur die Haupttitel, bei denen „VON = 0“ ist.</p> </blockquote> <p>So, Du möchtest die Tabelle behalten ;)</p> <p>Versuche einen inner join, ungetestet (und feldnamen klein, die musst Du anpassen und ggf. in Backticks quoten):</p> <pre><code class="block language-sql"> <span class="token keyword">SELECT</span> <span class="token keyword">table</span><span class="token punctuation">.</span>id<span class="token punctuation">,</span> <span class="token keyword">table</span><span class="token punctuation">.</span>seitentitel <span class="token keyword">FROM</span> <span class="token keyword">table</span> <span class="token keyword">as</span> basetable <span class="token keyword">INNER</span> <span class="token keyword">JOIN</span> basetable <span class="token keyword">ON</span> <span class="token keyword">table</span><span class="token punctuation">.</span>id <span class="token operator">=</span> basetable<span class="token punctuation">.</span>id </code></pre> <p>Select-Liste auch anpassen, where-Klause, order by hintendran. Wichtig bei inner join: die Tabelle bekommt einen alias.</p> <p>Hotti</p>