老师,问个问题
#查询底薪超过公司平均底薪的员工信息
SELECT AVG(sal) from t_emp;
SELECT
e1.ename,e1.sal
FROM t_emp e1 JOIN (SELECT deptno,AVG(sal) as avg from t_emp) t
WHERE e1.deptno=t.deptno AND e1.sal>=t.avg;
为什么这样写,只能得到三个结果?
15
收起
正在回答
1回答
同学你好,因为这样写多了个e1.deptno=t.deptno
(SELECT deptno,AVG(sal) as avg from t_emp)
该sql语句会把表中第一行的deptno的值显示出来
WHERE e1.deptno=t.deptno AND e1.sal>=t.avg;
这样写是将两个条件同时都满足的数据给展示出来,所以最后得到的是三个结果
祝学习愉快~
java工程师2020版
- 参与学习 人
- 提交作业 9393 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星