select e.emp_no,s.salary,e.last_name,e.first_name from employees e join salaries s on e.emp_no = s.emp_no where s.salary = (select max(salary) from salaries where salary < (select max(salary) from salaries ))
我用了两种方法,第一种是先找出最大值,然后取出除了最大值的 所有行,然后在这个剩余的所有行里面再找出最大值。但是老是有语法错误提示最大值已经被剔除了,然后后来换了第二种方法,就是把最大值找到作为筛选条件,来筛选出剩余的 行,再去 取出最大值,其实步骤和方法一是一样的,但是步骤二就可以实现。