【发布时间】:2014-01-22 17:01:40
【问题描述】:
我有一个使用 HSQLDB 的 JAVA 应用程序。有一个名为“marks”的表,其中包含一个名为“mark”的整数列。如果我使用 HSQLDB DatabaseManager 运行以下查询: SELECT AVG(CAST(mark as FLOAT)), SUM(mark) FROM tags WHERE sid=5 AND suid=8 DBM 返回正确的值: 1.5和3;对于标记 1 和 2。
如果我使用以下 JAVA 代码通过相同的查询读出此数据,java 总是打印出 2。对于平均值和总和。我不知道我做错了什么。也许你可以帮助我。
double avg = 0;
PreparedStatement stmt = dbcn.prepareStatement("SELECT AVG(CAST(mark as FLOAT)), SUM(mark) FROM marks WHERE sid=? AND suid=?");
stmt.setInt(1, 5);
stmt.setInt(2, 8);
ResultSet gARS = stmt.executeQuery();
while(gARS.next()){
avg = gARS.getDouble(1);
System.out.println(gARS.getInt(2));
}
return avg;
【问题讨论】: