SQL-Verschachtelung verhindern, wie?
Jan
- datenbank
0 Rouven
Hallo Leute!
Ich hab 2 Tabellen:
Tabelle1:
ID:Name:
1:Jan:
2:Pepe:
3:Jutta:
4:Julia:
5:Heinz:
Tabelle2:
1:Pepe:
2:Julia:
3:Patrick:
Mein Problem nun, ich möchte ein SQL mit dem ich folgendes Ergebnis erziele:
Tabelle1.ID:Tabelle1.Name:Tabelle2.ID:Tabelle2.Name
1:Jan:::
2:Pepe:1:Pepe:
3:Jutta:::
4:Julia:2:Julia:
5:Heinz:::
Das heisst ich möchte mir alle 4 Felder nebeneinander anzeigen lassen, die Felder aus Tabelle1 haben alle einen Inhalt, die aus Tabelle2 nur, wenn es in Tabelle1 den gleichen Namen gibt.
Mit dem SQL - SELECT Tabelle1.ID as ID1, Tabelle1.Name as Name1, Tabelle2.ID as ID2, Tabelle2.Name as Name2 FROM Tabelle1, Tabelle2 WHERE Tabelle1.Name = Tabelle2.Name - erhalte ich natürlich nur die die Spalten, wo beide denselben Inhalt enthalten, jedoch nicht noch den zusätzlichen Rest von Tabelle1.
Wie kann ich das bewerkstelligen? Ich könnte es zwar im Programm mit 2 verschachtelten Schleifen machen, würde es aber gern in einem SQL lösen können, damit ich im Programm nichts mehr umbauen muss.
Achja, ich arbeite leider "nur" mit SQLite3, hoffe der SQL-Sprachschatz ist da gross genug.
Liebe Grüsse
Jan
Hello,
also was du normalerweise suchst ist ein LEFT JOIN, siehe auch insgesamt Kategorie Datenbanken.
Achja, ich arbeite leider "nur" mit SQLite3, hoffe der SQL-Sprachschatz ist da gross genug.
das weißt ich gerade nicht. Mir scheint aber, du hast Glück und zumindest der LEFT Join ist da.
MfG
Rouven