Java 使用my php admin查询的最大值不为';不要只给出第一个值

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())

此代码用于查找员工的最高工资,即使用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())
    {  //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)