Also habe ich ein paar Fragen zu Joins gestellt und gute Antworten gefunden, aber es gibt immer noch etwas, worüber ich komplett stolpere.mysql Joins machen mich verrückt!
Ich habe 3 Tabellen. Nennen wir sie Tabelle-b, Tabelle-d und Tabelle-e.
Tabelle-b und Tabelle-d teilen eine Spalte namens p-id.
Tabelle-e und Tabelle-b teilen eine Spalte namens ev-id.
Tabelle-e hat auch eine Spalte namens date.
Tabelle-b hat auch eine eindeutige ID-Spalte namens U-ID.
Ich möchte eine Abfrage schreiben, die u-ID unter den folgenden Bedingungen zurück:
1) auf einen bestimmten Wert in table-e.date Restriced.
2) Wo table-b.p-id nicht mit der Tabelle-d.p-id übereinstimmt.
Ich denke, ich brauche innere Verbindung Tabelle-b und und Tabelle-e auf der E-ID-Spalte. Ich denke dann, dass ich einen linken Join auf Tabelle-d und und Tabelle-b ausführen muss, wo p-id null ist.
Mein Problem ist, dass ich die Syntax des Schreibens dieser Abfrage nicht kenne. Ich weiß, wie man mehrere innere Verbindungen schreibt und ich weiß, wie man eine linke Verbindung schreibt. Wie kombiniere ich die beiden?
Vielen Dank an alle, die mir helfen. Ich bin (offensichtlich!) Ein Neuling in Datenbanken und kämpfe darum, alles zu verstehen!
die beiden Teilabfragen Bitte schreiben - es hilft uns, wenn Ihnen zeigen, was Sie habe es bisher versucht. –
Sind Sie sich sicher, Bedingung 2? z.B. Wenn Sie p-id von 2, 3, 4 in Tabelle b und d haben, möchten Sie 2 in b 3 und 4 in d, 3 in b zu 2 und 4 in d und 4 in b zu 2 und 3 in b? Willst du auch, dass null in b null in d entspricht? –
Ich kann die Teilabfragen nicht veröffentlichen, weil ich sie nicht für dieses Beispiel geschrieben habe. Ich meinte nur, ich kenne die generische Syntax zum Ausführen von Joins. – musoNic80