2016-03-20 6 views
1

Ich habe drei Tabellen, die ich versuche, eine einzelne Tabelle in diesem Format zur Abfrage zurückzukehren:Warum funktioniert meine SQL UNION nicht?

Message Period Date Firstname Lastname Room_ID Description 
    x   x  x  x   x   x   x 
    x   x  x  x   x   x   x 

Tabelle ‚message‘ hat Spalten Nachricht, Periode, Datum, ROOM_ID, Teacher_ID. Tabelle 'rooms' hat Spalten Room_ID, Description. Tabelle 'Lehrer' hat die Spalten Teacher_ID, Firstname, Lastname.

Wohin gehe ich mit meiner SQL-Anweisung falsch?

Jede SELECT-Abfrage funktioniert von allein gut, aber ich habe Probleme, sie zu kombinieren.

+2

Alle Komponenten zu einem 'union' haben die gleichen Spalten haben. –

+0

Ich verstehe. Was wäre richtig? – eddiewastaken

Antwort

2

UNION kombiniert Zeilen aus verschiedenen Tabellen. Alle Unterabfragen müssen dieselben Spalten haben.

Vermutlich Sie join s:

SELECT m.Message, m.Period, m.Date, t.Firstname, t.LastName, r.roomID, r.Description 
FROM message m JOIN 
    teacher t 
    ON t.Teacher_ID = m.Teacher_ID JOIN 
    rooms r 
    ON m.Room_ID = r.Room_ID; 
+0

Brilliant. Danke Gordon. – eddiewastaken

Verwandte Themen