java - 我需要一个java中的sql语句来查找带有where子句的平均值并返回值

标签 java sql average

到目前为止我的代码是:

try{

    stmt = con.createStatement();

    String sql = "SELECT AVG(WPM) FROM Attempts WHERE Username = ('" + Login.loginUsername + "');

    rs = stmt.executeQuery(sql);

    int add1 = rs.getInt("AVG(WPM)");

        System.out.println("avg temp is " + add1);
    }

    catch (SQLException err) {
        System.out.println(err.getMessage());
    }

我的数据库设置如下:

  • (PK)“AttemptID”整数自动增量

  • “WPM”整数

  • (FK)“用户名”Varchar(45)

我希望它根据每个用户名返回平均 WPM。如果我改变线路

int add1 = rs.getInt("AVG(WPM)"); 

String add1 = rs.getString("AVG(WPM)");

没有什么区别。请帮忙。

最佳答案

尝试使用double add1 = rs.getDouble(1);

说明:rs.get...(1) 根据列索引获取列,而不是根据列名称。当您使用选择中的函数时,数据库可能会更改此设置。另外,请使用 double 而不是 int,因为 AVG 返回 double。

关于java - 我需要一个java中的sql语句来查找带有where子句的平均值并返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13831438/

相关文章:

c# - Dapper:是否可以自定义特定类型的特定字段的类型映射?

mysql - 如何编写平均 innerQuery

dynamic - 动态排除行

java - 异步 Commons-io 操作?

java - 尝试创建服务类时出现空指针错误

java - 如何在不保存 Excel 工作表的情况下从 Java 中的 Excel 工作表中读取动态变化的值

mysql - 按平均日期(时间戳)排序

java - std::vector 使用 swig 生成 java.util.Vector 代码

sql - TSQL - 如何对 2 列使用 case 语句?

php - 如何在php中从一个sql表中减去另一个表中的数据?