题解 | 获取有奖金的员工相关信息。
获取有奖金的员工相关信息。
https://www.nowcoder.com/practice/5cdbf1dcbe8d4c689020b6b2743820bf
-- 用连接去做,核心是有奖金的用户,那么emp_bonus应该为基表 SELECT t1.emp_no, t2.first_name, t2.last_name, t1.btype, t3.salary, ROUND(CASE WHEN t1.btype = 1 THEN t3.salary * 0.1 WHEN t1.btype = 2 THEN t3.salary * 0.2 ELSE t3.salary*0.3 END,1) bonus FROM emp_bonus t1 LEFT JOIN employees t2 ON t1.emp_no = t2.emp_no LEFT JOIN salaries t3 ON t1.emp_no = t3.emp_no WHERE t3.to_date = '9999-01-01' ORDER BY emp_no