Mailinglisten-Archive |
> -----Ursprüngliche Nachricht----- > Von: Wolfgang Oberhoff [mailto:wo_(at)_simple-net-consult.com] > Gesendet: Montag, 8. Januar 2001 10:58 > An: 'mysql-de_(at)_lists.4t2.com' > Betreff: select einer m:n Beziehung > > > hallo leute, > > ich habe folgendes problem: > > ich habe eine tabelle mit seminar-daten (semid, titel, inhalt, etc...) > ich habe eine weitere tabelle mit fachbereichen (bid, > bezeichnung, etc) > ich habe eine dritte tabelle seminar-fachbereich-zuordnung. > dort wird jedem > seminar ein oder MEHRERE fachbereiche zugeordnet (zuordid, semid, bid) > > das mache ich, weil ein seminar auch in verschiedenen fachbereichen > auftauchen soll. soweit so gut. > jetzt bin ich zu blöd ein select zu entwickeln, mit dem ich > alle seminare > eines fachbereichs bestimmen kann. wer kann mir auf die > sprünge helfen?? Nehmen wir an ich habe richtig verstanden. Ich gehe einmal von folgenden Voraussetzungen aus: Name der Tabelle Seminardaten: SemDat Name der Tabelle Fachbereiche: FBereich Name der Connectortabelle: ConSdFb bid des gesuchten Fachbereichs: 193A34XS In dem Fall sähe meine Lösung so aus: SELECT titel, inhalt FROM SemDat LEFT JOIN ConSdFb USING( semid ) LEFT JOIN FBereich AS fb USING( bid ) WHERE fb.bid = 193A34XS ; Ist leider nicht getestet, dafür hoffentlich hilfreich. Man könnte LEFT JOIN/USING-Bedingungen durch eine verkettete WHERE-Klausel ersetzen, nach G. Stepken ist das aber bei MySQL aber nur halb so effizient wie mein Vorschlag. mfg., -- Matthias Lampert, Hamburg --- *** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive