Selektion über mehrere Tabellen
Pete
- datenbank
MSSQL 2000
Hallo
Ich habe drei Tabellen:
Die Tabelle1 ist die Haupttabelle, auf welche sich die weiteren Tabellen über die T1ID referenzieren.
Beispielhalber kann man sagen, dass in Tabelle1 sagen wir ein Hersteller gespeichert wird und in Tabelle2 Informationen zum Produkt1 und in Tabelle3 zum Produkt2. Diese sind in separaten Tabellen weil sie total unterschiedliche Attributte haben.
Tabelle1 Tabelle2 Tabelle3
-------- -------- --------
ID ID ID
Typ T1ID T1ID
Name Typ Typ
Aktiv Name Name
Attributxy Attributqp
Gesperrt Offen
An und für sich noch nichts schwieriges, mein Problem ist die Datenbasis, die ich mit einer Selektion erzeugen möchte, so möchte ich mir die Resultate anzeigen:
In der ersten Zeile jeweils ein Datensatz aus Tabelle1, Dann darunter die dazu referenzierten Datensätze aus Tabelle2 und Tabelle3. Falls möglich im letzten Feld je nach Tabelle den Wert aus "Aktiv", "Gesperrt" oder "Offen", falls nicht machbar den Wert aus "Aktiv"
Tabelle1.ID Typ Name Aktiv/Gesperrt/Offen
-------------------------------------------------------------------
1 Tabelle1 Test1 Ja
1 Tabelle2 XYZ Nein
1 Tabelle3 ABC Ja
2 Tabelle1 Test2 Nein
2 Tabelle3 DEF Nein
Das Zeug zu Joinen um in einer Zeile anzuzeigen wäre kein Problem, aber ich finde keinen Ansatz um es wie oben beschrieben zu selektieren...
Hallo,
ich habe zwar Dein Datenbankdesign nicht verstanden, aber das von Dir gewünschte Ergebnis ...
Tabelle1.ID Typ Name Aktiv/Gesperrt/Offen
1 Tabelle1 Test1 Ja
1 Tabelle2 XYZ Nein
1 Tabelle3 ABC Ja
2 Tabelle1 Test2 Nein
2 Tabelle3 DEF Nein
... solltest Du mit UNION erreichen können.
Freundliche Grüße
Vinzenz