orcal - 多表查询

SQL1999语法标准
CROSS JOIN 产生笛卡尔积
SELECT * from EMP CROSS JOIN dept;
NATURAL JOIN 自然连接 相同列
SELECT * from EMP NATURAL JOIN dept;
JOIN USING(deptno)添加关联字段
SELECT * from EMP JOIN  dept USING(deptno);
设置关联条件
SELECT * from EMP e JOIN  salgrade s ON(e.sal between s.losal AND s.hisal);
外连接
左外连接
SELECT * FROM emp LEFT OUTER JOIN dept USING(deptno);
右外连接
SELECT * FROM emp RIGHT OUTER JOIN dept USING(deptno);
全外连接
SELECT * FROM emp FULL OUTER JOIN dept USING(deptno);
UNION  将结果集合并,重复数据不显示(只显示一次)
SELECT empno,ename,job FROM emp WHERE deptno = 10
UNION
SELECT empno,ename,job FROM emp 
UNION ALL 将结果集合并,所有重复数据显示
SELECT empno,ename,job FROM emp WHERE deptno = 10
UNION ALL
SELECT empno,ename,job FROM emp 
INTERSECT 得到相同数据 交集
SELECT empno,ename,job FROM emp WHERE deptno = 10
INTERSECT
SELECT empno,ename,job FROM emp;
MINUS 第一个集合减去第二集合 差集合
SELECT empno,ename,job FROM emp
INTERSECT
SELECT empno,ename,job FROM emp WHERE deptno = 10;

猜你喜欢

转载自www.cnblogs.com/jinyu-helloword/p/10742931.html