Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mysql Select Befehl über 3 Tabellen?

Frage Entwicklung Datenbanken

Mitglied: rdklie

rdklie (Level 1) - Jetzt verbinden

17.12.2014, aktualisiert 13:25 Uhr, 786 Aufrufe, 6 Kommentare

Guten Tag zusammen!

Ich habe eine kleine Frage bezüglich Mysql.

Zur Fragestellung: Die Frage wäre "Welche Mitglieder organisieren Veranstaltungen in einem bestimmten Ort?"

Ich habe hierzu 3 Tabellen:

Mitglieder_table
| MNr | Name | Vorname |

Organisiert_table
| MNr | VNr |

Veranstaltung_table
| VNr | Ort |

*MNr = Mitglied ID, VNr = Veranstaltungs ID


Bisher habe ich diese Aufgabe mittels diesem Befehl gelöst:
SELECT Name, Vorname FROM Mitglied
WHERE MNr IN (SELECT MNr FROM organisiert WHERE VNr = '1' OR VNr = '3');

Ich habe aber das Gefühl, dass bei wachsenden Veranstaltungen dieser Befehl nicht zu brauchen ist. Da muss es doch ne Möglichkeit geben mit mehr Logik, in der man den Ort gezielt abholen kann?

Hoffe mir kann einer helfen.

Beste Grüsse
Rdklie
Mitglied: killtec
17.12.2014 um 10:07 Uhr
Hi,
such mal nach Join.
Damit kannst du Tabellen "verbinden". Es gibt Left, Inner und Right. Je nachdem was du von wo nach wo joinen willst brauchst du die unterschiedlichen.

Gruß
Bitte warten ..
Mitglied: rdklie
17.12.2014 um 10:47 Uhr
Danke für den Tipp, komme jedoch nicht recht mit.
Die Abfrage ist ja. Welches Mitglied mit MNr organisiert Veranstaltungen mit VNr mit dem Ort XXX in Veranstaltungen.

Wie wäre dann der Aufbau vom Statement? braucht es 2 Joins? oder kann ich mit dem oben angeführtem Befehl weiterarbeiten?

Beste Grüsse
Bitte warten ..
Mitglied: killtec
17.12.2014 um 12:13 Uhr
Hi, du brauchst dann zwei Koins,
aus dem Kopf weiß ich leider nicht genau, wie das SQL Statement dann aussehen müsste.


Gruß
Bitte warten ..
Mitglied: Gersen
LÖSUNG 17.12.2014, aktualisiert um 13:25 Uhr
Hallo,

Du brauchst doch bloß die Tabellen im SQL-Statement zu verknüpfen:
select t1.mnr, t1.vorname, t1.name, t2.vnr, t3.ort from mitglieder t1, organisiert t2, veranstaltung t3 where t1.mnr = t2.mnr and t2.vnr = t3.vnr
Für eine bestimmte MNr einfach die where-Bedingung ergänzen:
and t1.mnr = ...
Gruß,
Gersen
Bitte warten ..
Mitglied: ITvortex
LÖSUNG 17.12.2014, aktualisiert um 13:25 Uhr
Zitat von Gersen:

Hallo,

Du brauchst doch bloß die Tabellen im SQL-Statement zu verknüpfen:
select t1.mnr, t1.vorname, t1.name, t2.vnr, t3.ort from mitglieder t1, organisiert t2, 
> veranstaltung t3 where t1.mnr = t2.mnr and t2.vnr = t3.vnr
Für eine bestimmte MNr einfach die where-Bedingung ergänzen:
and t1.mnr = ...
Gruß,
Gersen

Ja aber dann:
From tabelle1 t1, tabelle2 t2, tabelle3 t3 
usw...

Liebe Grüße
ITvortex
Bitte warten ..
Mitglied: rdklie
17.12.2014 um 13:24 Uhr
Hallo Gersen

select t1.Name, t1.Vorname From Mitglied t1, organisiert t2, Veranstaltung t3 Where t1.MNr = t2.MNr and t2.Vnr = t3.vnr and t3.Ort = 'XYZ'

Klappt wunderbar, danke!

Gruss
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst MySQL - Feld aus anderer Tabelle hinzusummieren? (5)

Frage von 1410640014 zum Thema Datenbanken ...

Datenbanken
Mit sql eine Zeile einfügen, select und feste Werte (9)

Frage von helmuthelmut2000 zum Thema Datenbanken ...

Batch & Shell
gelöst Powershell: Select-String erzeugt nicht das gewünschte Ergebnis (7)

Frage von MuHMuH zum Thema Batch & Shell ...

Datenbanken
MySQL bearbeiten - Rechte auf User ändern (6)

Frage von istike2 zum Thema Datenbanken ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(2)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
gelöst Leiten "dumme" Switches VLAN-Tags mit durch? (26)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

Netzwerkgrundlagen
Kann auf Freigabe nicht Zugreifen (19)

Frage von leon123 zum Thema Netzwerkgrundlagen ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Windows Server
DC virtualisieren + wie sichern (SingleDC-Environment) (12)

Frage von KMUlife zum Thema Windows Server ...