2016-10-28 1 views
0

Ich habe drei Tabellen verknüpfen:Wie drei Tabellen in SQL Server

  • Kapitel (ChapterNo, Desc)
  • Lesson (LessonNO, Dezember, ChapterNo)
  • Fall (CaseNo, Beschr, LessonNo)

Wie Sie sehen, sind die drei Tabellen alle verbunden. Ich möchte alle Kapitel (auch ohne Unterricht), alle Lektionen (auch ohne Fälle) und alle Fälle zurückgeben.

Es tut mir leid zu sagen, aber ich habe wirklich keine Idee, also habe ich keinen Beispielcode. Ich hoffe meine Erklärungen sind genug.

+2

Verwenden Left –

+2

Abfrage Sandip für drei Tabellen Join wird Ihnen helfen, aber ich rate Sie Ihren Lehrer zu informieren, Sie immer noch mit den grundlegenden Konzepten von SQL kämpfen. Wenn es dir schwer fällt, dieses herauszufinden, wird es später die Hölle sein. – Jens

Antwort

3

USE LEFT JOIN:

SELECT 
    C.*, 
    L.*, 
    CA.* 
FROM Chapter C 
LEFT JOIN Lesson L ON C.ChapterNo=L.ChapterNo 
LEFT JOIN Case CA ON L.LessonNo=CA.LessonNo 
1

Verwenden Sie linke Abfrage, um Verbinden Sie Ihr gewünschtes Ergebnis

Wie die Tabellen für Namensgebung zu bekommen. Verwenden Sie nicht Case als Tabellenname, da es ein reserviertes Wort für SQL ist.

SELECT CH.ChapterNo,CH.Desc,LE.LessonNo,LE.Dec,CA.CaseNo,CA.Desc FROM Chapter CH LEFT JOIN Lesson LE ON CH.ChapterNo = LE.ChapterNo LEFT JOIN Cases CA ON LE.LessonNo = CA.LessonNO

1
SELECT * 
FROM Chapter C 
LEFT JOIN Lesson L ON C.ChapterNo=L.ChapterNo 
LEFT JOIN Case CA ON L.LessonNo=CA.LessonNo 
1
Select * From Chapter c 
    Left Join Lesson l On c.ChapterNo=l.ChapterNo 
    Left Join Case cs On cs.LessonNo=l. LessonNo