Hallo zusammen,
ich will eine SQL Abfrage aufbereitet in einen Report rein packen.
Die reinen Java Sourcen laufen suuuupa… naja… fast…
Ich joine zwei Tabellen (Bundesland und Person) deren Ausgabewert 37 Datensätze beinhaltet. (lass ich mitschneiden bzw mitzählen und ausgeben)
und jetzt habe ich das Prob, dass ich, wenn ich dem Bundesland die 2 bis 3 Leute zuordne und untereinander ausgeben will in Excel so a la
Bundesland Rang Einwohner
Nordrhein-Westfalen 1 0
Person
Name Vorname Alter
test1 a 0
bekomm ich 37 mal alles ausgegeben, obwohl das Bundesland ja nur 16 mal mit den dazugehörigen Personen ausgegeben werden soll.
hier noch der Code an dem das hängt…
Statement stmt = con.createStatement();
// stmt.execute("select count(\*) from bndlaender;");
ResultSet rs = stmt
.executeQuery("select b.B\_ID, b.Rang, b.Name as bname, b.Einwohner, b.P\_ID, " +
"p.P\_ID, p.Name as pname, p.Vname, p.Alter" +
" from Bundesland b," +
" Person p" +
" where b.B\_ID=p.B\_ID" +
" order by b.B\_ID");
while (rs.next()) {
land = new Laender(rs.getInt("B\_ID"), rs
.getInt("Rang"), rs.getString("bname"), rs
.getInt("Einwohner") );
pers1= new Person(rs.getString("pname"), rs
.getString("Vname"), rs.getInt("Alter"), rs
.getInt("P\_ID"));
land.addPerson(pers1);//
weiß jemand, was ich da machen kann, dass das Prob nicht mehr auftritt…?
Ach ja… Laender hat ne ArrayList und ne getter und Setter für Person.
Läuft aber vollständig…
Vielen Dank schonmal…
LG
Micha