java - 在Java中获取最大值sql

标签 java sql max

*我没有在其他函数中得到 max 的值。返回值为“0”。我尝试但没有成功:( Image

public int PriceMax(int manhom){
        Connection conn = this.connect();
        int max = 0;
        if(conn != null){
            try {
                java.sql.Statement statement = conn.createStatement();
                String sql = "SELECT AVG(GiaSP) from tbsanpham where manhom = '"+manhom+"'";
                ResultSet rs = statement.executeQuery(sql);
                max = rs.getInt(sql);
            } catch (SQLException ex) {
                Logger.getLogger(CSDL.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
        return max;
    }

求助!!!

int manhom = cbbNhomSanPham.getSelectedIndex();
        CSDL csdl = new CSDL();
        int max = csdl.PriceMax(manhom);
        JOptionPane.showMessageDialog(null, "Nhóm sản phẩm: '"+cbbNhomSanPham.getName()+"' \nPrice max: '"+max+"' ");

最佳答案

您没有按应有的方式使用它。

首先,您使用 AVG 但想要 MAX 因此将其更改为 MAX(GiaSP)。其次,您必须使用 rs.next() 将光标移动到第一行,然后从中获取信息。

java.sql.Statement statement = conn.createStatement();
String sql = "SELECT MAX(GiaSP) from tbsanpham where manhom = '"+manhom+"'";
ResultSet rs = statement.executeQuery(sql);
if (rs.next()) {
    max = rs.getInt(1);
}

关于java - 在Java中获取最大值sql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37500709/

相关文章:

php - 创新数据库 : Create a many to many relationship between mysql tables

mysql - 在MYSQL中如何获取每一行的最大计数?

java - 可以将注入(inject)的 EntityManagers 传递给 EJB bean 的帮助类并使用它吗?

java - 应用引擎身份验证

java - EAFP。在 Java 中请求宽恕而不是许可

Mysql 查询性能不佳

java - 从用户任务中保存变量并用作条件变量

mysql函数定义器安全

sql - 根据字段的最大值选择整行 - 不嵌套

c# - ElasticSearch(C#Nest)中的多个最大/最小聚合