Java 这是MySQL使用MAX函数的正确方法吗?
列_1中的数字是从1到10的10行。我试图找到最大的数字,并将其加入另一列Java 这是MySQL使用MAX函数的正确方法吗?,java,mysql,database,eclipse,Java,Mysql,Database,Eclipse,列_1中的数字是从1到10的10行。我试图找到最大的数字,并将其加入另一列 private ResultSet nrs; nrs = stmt.executeQuery("SELECT MAX(column_1) FROM table"); while(nrs.next()){ biggestNum = nrs.getInt("column_1"); } 它不断抛出错误“Column”Column_1“notfound” 请帮助。将nrs.getInt(“列1”)替换为nr
private ResultSet nrs;
nrs = stmt.executeQuery("SELECT MAX(column_1) FROM table");
while(nrs.next()){
biggestNum = nrs.getInt("column_1");
}
它不断抛出错误“Column”Column_1“notfound”
请帮助。将nrs.getInt(“列1”)替换为nrs.getInt(1)
您尚未为所选值指定名称,因此数据库将选择自己的名称。您不知道该名称是什么,所以只需使用列号即可。不太熟悉java,但我熟悉sql。列_1不存在,因为它已聚合。试试这个:
private ResultSet nrs;
nrs = stmt.executeQuery("SELECT MAX(column_1) as maxColumn1 FROM table");
while(nrs.next()){
biggestNum = nrs.getInt("maxColumn1");
}
但是我很确定有一个更好的方法可以做到这一点,因为{}
中的部分最多只能重复一次,所以用if
替换while
是有意义的。它不会对代码的功能产生任何影响,但会更清楚地传达代码的意图。