题解 | #获取有奖金的员工相关信息。#

获取有奖金的员工相关信息。

http://www.nowcoder.com/practice/5cdbf1dcbe8d4c689020b6b2743820bf

select
e1.emp_no
,e1.first_name
,e1.last_name
,eb1.btype
,s1.salary
,s1.salary0.1 bonus
from employees e1
join emp_bonus eb1
on e1.emp_no = eb1.emp_no
join salaries s1
on s1.emp_no = e1.emp_no
where eb1.btype = 1
and s1.to_date = '9999-01-01'
union
select
e1.emp_no
,e1.first_name
,e1.last_name
,eb1.btype
,s1.salary
,s1.salary
0.2 bonus
from employees e1
join emp_bonus eb1
on e1.emp_no = eb1.emp_no
join salaries s1
on s1.emp_no = e1.emp_no
where eb1.btype = 2
and s1.to_date = '9999-01-01'
union
select
e1.emp_no
,e1.first_name
,e1.last_name
,eb1.btype
,s1.salary
,s1.salary*0.3 bonus
from employees e1
join emp_bonus eb1
on e1.emp_no = eb1.emp_no
join salaries s1
on s1.emp_no = e1.emp_no
where eb1.btype <> 1
and eb1.btype <> 2
and s1.to_date = '9999-01-01'
order by emp_no
有点长 本人不知道case函数 使用union连接,思路很简单
但是最后order by加不加没啥 加order by是为了让机器检查通过的

全部评论

相关推荐

05-09 13:22
门头沟学院 Java
点赞 评论 收藏
分享
待现的未见之事:起码第一句要把自己的优势说出来吧。比如什么xx本27届学生,随时到岗....
点赞 评论 收藏
分享
如题,只有过一段小厂实习经历,秋招会很吃亏吗?
KarlAllen:我也没大厂实习。今年大厂又扩招实习生。不知道秋招要怎么办了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务