1. 交叉連線cross join(相當於笛卡爾積效果)
select e.ename,d.dname
from emp e cross join dept d;
2. 自然連線 natural join
select e.ename,d.dname
from emp e natural join dept d;
3. 使用using子句的方式指定作等值連線的列
select e.ename,d.dname
from emp e join dept d
using(deptno);
4. 使用on子句的方式指定作等值連線的列
select e.ename,d.dname
from emp e join dept d
on (e.deptno=d.deptno);
select e.ename,d.dname,l.city
from emp e join department d on(e.deptno=d.did)
join locations l on(d.lid=l.locid);
5. 左外連線
select e.ename,d.dname,e,deptno
from emp e left outer join dept d
on(e.deptno=d.deptno);
6. 右外連線
select e.ename,d.dname,d,deptno
from emp e right outer join dept d
on(e.deptno=d.deptno);
7. 全外連線
select e.ename,d.dname,d.deptno
from emp e full outer join dept d
on(e.deptno=d.deptno);
合併行(備份表、多條插入)
merge into emp_bak e1
using emp e2
on(e1.empno=e2.empno)
when matched then
update set
e1.ename=e2.ename,e1.sal=e2.sal,e1.comm=e2.comm,e1.job=e2.job,e1.hiredate=e2.hiredate
when not matched then
insert (e1.empno,e1.ename,e1.sal,e1.comm,e1.hiredate,e1.deptno,e1.job)
values(e2.empno,e2.ename,e2.sal,e2.comm,e2.hiredate,e2.deptno,e2.job)
四 SQL99外連線
外連線除了能顯示滿足連線條件的資料以外,還用於顯示不滿足連線條件的資料 left outer join,表示左外連線,可以顯示左表中不滿足連線條件的資料 select e.ename,e.job,d.deptno,d.dname,d.loc from dept d left join emp e o...
sql99語法 左 右 外連線
二 外連線 應用 查詢乙個表中有,另乙個表沒有的記錄 特點 1.外連線的查詢結果為主表中的所有記錄 如果從表中有和它匹配的,則顯示匹配的值 如果從表中沒有和他匹配的,則顯示null 外連線查詢結果 內連線 主表中有而從表中沒有的記錄 2 左外連線 left join 左邊的是主表 右外連線 righ...
sql99語法的連線查詢
select 查詢列表 from 表1 別名 連線型別 join 表2 別名 on 篩選條件語法 select 查詢列表 from 表1 別名 inner join 表2 別名 on 篩選條件分類 1.等值 2.非等值 3.自連線 特點 1.可新增排序 分組 篩選 2.inner可省略 3.篩選條件...