Hallo JD,
D.h. ich mache eine Abfrage beispielsweise für ID, NAME und eine für ID, NACHNAME.
Anschließend möchte ich aus diesen Ergebnissen ID, NAME, ID, NACHNAME machen?
Geht das?
ja, das geht natürlich in Standard-SQL - sogar relativ leicht.
Die Syntax schaut ungefähr so aus:
SELECT t1.ID, t1.NAME, t2.NACHNAME
FROM tabelle1 t1, tabelle2 t2
WHERE t1.ID = t2.ID;
Und das sollte es auch schon wieder gewesen sein.
Extrem wichtig ist, dass Du immer die Felder sauber ausqualifizierst - sprich: die Datenbank soll nicht raten müssen, welche "ID" aus welcher Tabelle Du meinst - sondern immer mit dem Präfix ausqualifizieren.
Diese Syntax geht übrigens nur dann, wenn es immer in BEIDEN Tabellen Sätze gibt. Wenn mal einer wo fehlt (egal ob in der ersten oder der zweiten), dann fehlt auch das Ergebnis (das ist eine der Eigenschaften des sog. INNER JOINS) - quasi eine logische UND-Verknüpfung.
Alternativ dazu gibt's die OUTER JOINS - die schreibt man ein wenig anders:
SELECT t1.ID, t1.NAME, t2.NACHNAME
FROM tabelle1 t1 LEFT JOIN tabelle2 t2
ON t1.ID = t2.ID;
Mit dem LEFT bestimmst Du, welche Tabelle die "führende" ist - sprich: In dieser Tabelle MUSS der Datensatz da sein, damit er auch ins Result set kommt. Bei der anderen ist es egal, ob der Satz da ist oder nicht.
Wenn die Begriffe aber immer verlässlich in beiden Tabellen paarweise (oder auch öfters) vorkommen, dann kannst Du aber auf den einfacheren Inner Join zurückgreifen.
LG,
Boby