SQL语句中的易错点

一、等值连接:

–1.同名字段需要加别名,定义了别名,不能再使用表名

select d.deptno,dname,loc,ename,sal,job
from dept d,emp e
where d.deptno = e.deptno;

–2.建议字段都使用别名前缀,效率高

select d.deptno,dname,loc,e.ename,sal,job
from dept d,emp e
where d.deptno = e.deptno and  e.sal>2000;

二、非等值连接(很少用)

–1.查询员工的工资等级

select empno,ename,sal,grade,losal,hisal 
from emp e,salgrade  s
where e.sal>s.losal and e.salorder by grade desc;

**小问题:为什么命名为等值连接和非等值连接?
小答应:等值连接的条件语句中存在等号;
非等值连接的条件语句中不存在等号。**

三、外连接:除了显示匹配的数据,还可以显示某个表不匹配的数据;
(等值连接 是一种内连接,只显示匹配的数据,导致没有员工的部门或者没有部门的员工都不显示。)
外连接分为左外连接和右外连接:
(+)在左边称为右外连接,这种情况往往意味着补充左边表格里的内容,而右边的表是主表;
(+)在右边称为左外连接,这种情况意味着要补充右边表格里的内容,而左边的表是主表;

--左外连接
SQL> select e.ename , e.empno, m.ename from emp e, emp m where e.mgr = m.empno(+);

你可能感兴趣的:(SQL语句基础,SQL语句基础)