Java 使用my php admin查询的最大值不为';不要只给出第一个值
此代码用于查找员工的最高工资,即使用netbeans中的java在phpmyadmin中存储在数据库中的数据:Java 使用my php admin查询的最大值不为';不要只给出第一个值,java,max,Java,Max,此代码用于查找员工的最高工资,即使用netbeans中的java在phpmyadmin中存储在数据库中的数据: case 5:{//start of max salary 5 RS = st.executeQuery("select * from firsttable where having max(salary)"); System.out.println("the employee with max salary: "); while (RS.next())
case 5:{//start of max salary 5
RS = st.executeQuery("select * from firsttable where having max(salary)");
System.out.println("the employee with max salary: ");
while (RS.next())
{ //start while loop
//retrieve data
String []data = {RS.getString("ID"),
RS.getString("firstName"),
RS.getString("lastName"),
RS.getString("birthDate"),
RS.getString("salary"),
RS.getString("lastLogin")};
{//start print data
System.out.println("ID: "+data[0]);
//System.out.println("ID int: "+RS.getInt("ID"));
System.out.println("firstName: "+data[1]);
System.out.println("lastName: "+data[2]);
System.out.println("birthDate: "+data[3]);
System.out.println("salary: "+data[4]);
System.out.println("lastLogin: "+data[5]);
}//end print data
}//end while loop
break;
}//end of max salary 5
我很惊讶这个查询返回了任何东西。您需要的是:
SELECT *
FROM firsttable
WHERE salary = (SELECT MAX(salary) FROM firsttable)
或
SELECT *
FROM firsttable
HAVING salary = MAX(salary)