请问老师用表连接的方式怎么做?

请问老师用表连接的方式怎么做?

# 查询比”FORD” ”MARTIN”底薪高的员工

SELECT e.ename
FROM t_emp e LEFT JOIN (SELECT sal FROM t_emp WHERE ename IN ("FORD","MARTIN")) s
ON e.deptno = s.deptno
WHERE e.ename NOT IN("FORD","MARTIN") AND e.sal > ALL;

我这么写报错了,应该怎么写?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学,你好。这是分别查询了"FORD"和"MARTIN"的底薪,查询结果如下:

http://img1.sycdn.imooc.com//climg/5e9d039d095c8ac111750412.jpg

如果一起查询出来,没办法分辨哪个是"FORD"的底薪,哪个是"MARTIN"的底薪,同学如果像探究是否可以一起查询出来再做分辨,可以在网上查阅资料,做相关探索。

祝学习愉快~

好帮手慕笑蓉 2020-04-19 12:10:42

同学,你好。可用如下语句:

SELECT e.ename 
FROM t_emp e 
LEFT JOIN (SELECT sal  FROM t_emp WHERE ename IN ("FORD")) s1 
ON 1=1
LEFT JOIN (SELECT sal  FROM t_emp WHERE ename IN ("MARTIN")) s2
ON 1=1
where e.sal>s1.sal and e.sal>s2.sal;

如果解决了你的疑惑,请采纳,祝学习愉快~ 

  • 提问者 慕瓜2155115 #1
    这么做是分开查询"FORD""MARTIN"的底薪意思吗,再用所有员工的底薪和"FORD""MARTIN"的底薪分别比较?如果把"FORD""MARTIN"的底薪一起查询出来当作临时表,怎样从这张表里分别提取"FORD""MARTIN"的底薪和所有员工的底薪作比较?
    2020-04-20 07:19:38
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师