SQL-Abfragen - n:m Beziehung
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
alten beitrag
anweisung
bedingung
beteiligten tabellen
beziehung
code
datenbank
eigenschaft
gruppe
http
identifizieren
lehrer
lernen
liste
person
punkt
spalten
tabelle
url
verwechslung
-
Hi,
ich möchte einfach SQL-Abfrage machen, bei der ich 3 Tabellen habe:
1) Die erste Tabelle enthält einen Primärkey(NutzerID) und Namen, Emailadressen...
2) Die zweite Tabelle enthält Gruppen - eine Person kann in beliebig vielen Gruppen sein und eine Gruppe kann beliebig viele Personen haben. Halt noch Eigenschaften von Gruppen und eine GruppenID als Primärkey
3) Die 3. Tabelle verbindet die beiden, so dass ich bel. GruppenID's beliebigen NutzerID's zuordnen kann (beide Fremdschlüssel)
, so dass ist die n:m Beziehung.
Abfragen möchte ich jetzt alle Übungsgruppen in denen Max eingeschrieben ist.
Hoffe ihr könnt mir helfen - lerne gerade sql durch try - error
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Sehr gute Seite, die dir weiterhilft beim lernen:
http://www.lehrer-online.de/relationale-datenbanken.php
EDIT: Alten Beitrag editiert, diesen ignorieren und löschen, bitte
Danke
Beitrag zuletzt geändert: 31.1.2013 18:32:08 von kigollogik -
Da brauchst du einen Join:
SELECT g.[Gruppenname] FROM [Tabelle 1] n, [Tabelle 2] g, [Tabelle 3] ng WHERE n.NutzerID = ng.NutzerID AND ng.GruppenID = g.GruppenID AND n.[Nutzername] = 'Max'
In der SELECT-Anweisung hast du alle Spalten, deren Werte genommen werden sollen. Um Verwechslungen zu vermeiden, steht ein Tabellenalias mit einem Punkt vor dem Spaltennamen.
In der FROM-Anweisung steht eine kommagetrennte Liste aller "beteiligten" Tabellen, mit einem kurzen Alias dahinter, um die Spalten eindeutig zu identifizieren.
In der WHERE-Bedingung stehen die Join-Bedingungen und die Bedingungen, dass der Name "Max" sein muss. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage