2016-04-26 9 views
1

Dies ist die Tabelle, die ich habe: Tabellenname: Player. Alle Datentyp float sinderrorjava.sql.SQLException: Spalte 'pts' nicht gefunden

id  | pts | gp 
0  | 45 | 5 
1  | 13 | 6 
2  | 74 | 10 

ich die avg der Punkte auswählen möchten. Hier ist die Funktion, die ich nach dem Verbinden mit der db beim Klicken auf die Schaltfläche verwendet habe.

public float getavgstats() { 
float ptsavg = 0; 


try { 
    Statement stmt = conn.createStatement(); 
    ResultSet rs = stmt.executeQuery("select (cast((pts/gp) as decimal(10,2))) as ppg from player order by ppg desc"); 
    while (rs.next()) { 
    ptsavg = rs.getFloat("pts"); 
    System.out.println(ptsavg); 
} 
} catch (Exception ex) { 
System.out.println("error" + ex); 
} 
return ptsavg; 
} 
} 

Ich erhalte eine Fehlermeldung, dass die Spalte ‚pts‘ nicht

+2

Ihr resultset nichts enthält, anders als ein 'ppg' Feld .try' ptsavg = rs.getFloat ("ppg ");' – Berger

Antwort

3

Ihre Abfrage gibt nur eine Spalte gefunden wird - ppg, ist es nicht eine pts Spalte in ihm.

Wenn Sie es abfragen möchten, sollten Sie es auf Ihre Frage hinzufügen:

ResultSet rs = stmt.executeQuery(
    "select pts, (cast((pts/gp) as decimal(10,2))) as ppg " + 
    // Here-^ 
    "from player order by ppg desc"); 
Verwandte Themen