My code has two loops, my outer loop should loop through all the rows of the inner loop for the first row of outer loop, and the for the second row of the outer loop, it should loop through all the rows of the inner row.
int y1,y2;
float t = 0,s1,s2;
while(rm.next())
{
int currentCol = 0;
cellNumber = new jxl.write.Number (currentCol++, currentRow, index, integerFormat);
index++;
sheet.addCell ( cellNumber );
cellLabel = new Label(currentCol++, currentRow, rs.getString("Name"));
sheet.addCell ( cellLabel );
y1 = rm.getInt("Year");
System.out.println("Year 1: " +y1);
cellNumber = new jxl.write.Number (currentCol++, currentRow, y1 , integerFormat);
sheet.addCell ( cellNumber );
s1 = rm.getFloat("Total_Price");
System.out.println("S1: "+s1);
while (rs.next())
{
y2 = rs.getInt("Year");
System.out.println("Year 2: " +y2);
s2 = rs.getFloat("Total_Price");
System.out.println("S2: " +s2);
if(y1==y2)
{
t = s1+s2;
System.out.println("Toatl Sales:" +t);
cellNumber = new jxl.write.Number (currentCol++, currentRow, t , priceformat);
sheet.addCell ( cellNumber );
}
}
int a = rs.getFetchDirection();
System.out.println("Direction: " +a);
rs.setFetchDirection(ResultSet.FETCH_REVERSE);
cellNumber = new jxl.write.Number (currentCol++, currentRow, s1 , priceformat);
sheet.addCell ( cellNumber );
currentRow++;
}
Use this:
resultSet.beforeFirst()
From docs:
Throws: SQLException - if a database access error occurs; this method is called on a closed result set or the result set type is TYPE_FORWARD_ONLY