SQL Kurzer SQL Befehl gesucht

GermanGhettos

Lt. Commander
Registriert
Apr. 2011
Beiträge
1.102
Hi,

ich benötige einen SQL Befehl, auf den ich gerade nicht komme :D
Beispielhaft.
Die Datenbank hat 2 Tabellen.
Ich möchte gerne FID und ID aus der ersten Tabelle selecten, wo die KDNR (Kundenummer) der gewählten KDNR aus der Java Combobox entspricht.
Gleichzeitig brauche ich aber auch den TITEL (des Filmes) aus der 2. Tabelle, wo die ID (der zeile aus der 2. Tabelle) der FID aus der 1. Tabelle entspricht.

So sieht es aktuell aus mit 2 SQL Befehlen.
Das Problem ist natürlich, dass meine Tabelle am Ende zwar wie gewünscht alle Spalten aus der Datenbank angezeigt bekommt, aber die ID immer 5 ist, weil das der Count ist.
Ich müsste also die Befehle von RS und RS1 zusammenfügen, dass daraus 1 SQL Befehl wird, damit ich nicht zwei separate SQL Befehle wegschicken muss.


try{
ResultSet rs2 = doSQL(connection, "select count(*) as a from dbo.Ausleihuebersicht where KDNR = \'"+movieretourkdnrbox.getSelectedItem()+"\'");
while (rs2.next()) {
count = rs2.getString("a");
i = Integer.parseInt(count);
} // end of while
} catch (Exception e){ }

for (f=0;f <= i;f++) {
try{
ResultSet rs = doSQL(connection, "select FID as a, ID as b from dbo.Ausleihuebersicht where KDNR = \'"+movieretourkdnrbox.getSelectedItem()+"\'");
while(rs.next()) {
FID = rs.getString("a");
ID = rs.getString("b");
}
} catch (Exception e){ }

try{
ResultSet rs1 = doSQL(connection, "select TITEL as c from dbo.Filmuebersicht where ID = \'"+FID+"\'");
while(rs1.next()) {
TITEL = rs1.getString("c");
}
} catch (Exception e){ }

TabelleModel3.addRow(new Object[]{FID,ID,TITEL});
} // end of for



Mit anderen Worten.
Wie kann ich diese zwei Befehle vereinen.
select FID as a, ID as b from dbo.Ausleihuebersicht where KDNR = \'"+movieretourkdnrbox.getSelectedItem()+"\'
select TITEL as c from dbo.Filmuebersicht where ID = \'"+FID+"\'


Besten Dank!
 
Ist es nicht einfach das?!
select t1.FID as a, t1.ID as b, t2.TITEL as c from dbo.Ausleihuebersicht as t1, dbo.Filmuebersicht as t2 where t1.KDNR = \'"+movieretourkdnrbox.getSelectedItem()+"\' and t2.ID = t1.FID
 
select dbo.Ausleihuebersicht.FID as a, dbo.Ausleihuebersicht.ID as b, dbo.Filmuebersicht.TITEL as c
from dbo.Ausleihuebersicht
join dbo.Filmuebersicht on dbo.Filmuebersicht.ID = dbo.Ausleihuebersicht.FID
where dbo.Ausleihuebersicht.KDNR = \'"+movieretourkdnrbox.getSelectedItem()+"\'


oder so ähnlich xD
 
select FID as a, c.TITEL, ID as b from dbo.Ausleihuebersicht

left join dbo.Filmuebersicht as c on c.ID = a

where KDNR = \'"+movieretourkdnrbox.getSelectedItem()+"\'
 
Funzt super danke :D
Das blöde Join war es!
Da muss ich wohl noch mal ran :evillol:
 
Zurück
Oben