题解 | #获取当前薪水第二多的员工的emp_no以及其对应的薪水salary#
获取当前薪水第二多的员工的emp_no以及其对应的薪水salary
http://www.nowcoder.com/practice/c1472daba75d4635b7f8540b837cc719
在select字句中直接只用max(salary),在sqlite中可以通过,可同时返回多个字段。但在mysql中,select字句中使用聚合函数,规定只能返回一个字段,直接将max(salary)和其他字段并用,会报错。
在sqlite和mysql中均可通过的答案如下:
select em.emp_no,salary,last_name,first_name from employees em join salaries sa on em.emp_no=sa.emp_no where salary=( select max(salary) from salaries where salary!=( select max(salary) from salaries where to_date='9999-01-01') and to_date='9999-01-01')
查看2道真题和解析
