Oracle資料庫筆記9(內連線與外連線)

2021-09-12 10:09:53 字數 1004 閱讀 8509

內連線格式:

select 列名... from 表1 inner join 表2 on  條件

1 左外連線:左側的表完全顯示(+寫在右邊,表示對方表是左表)

2 右外連線:右側的表完全顯示

3 完全連線:完全顯示2個表,沒有匹配的記錄也顯示是完全連線

//顯示員工的資訊和部門名字(用內連線的方式)

select emp.ename,emp.deptno,dept.deptno from emp inner join dept on emp.deptno=dept.deptno;

//顯示所有人的成績,如果沒有成績,也要顯示該人的姓名和id,該同學成績顯示為空;

select stu.id,stu.name,exam.grade from stu left join exam on stu.id=exam.id;

或者:   select stu.id,stu.name,exam.grade from stu, exam where stu.id=exam.id(+);

//顯示所有名字,如果沒有名字匹配,則顯示為空

select stu.id,stu.name,exam.grade from stu right join exam on stu.id=exam.id;

或者:   select stu.id,stu.name,exam.grade from stu, exam where stu.id(+)=exam.id;

//顯示所有成績與所有的名字

//正確方式

select stu.id,stu.name,exam.grade from stu all join exam on stu.id=exam.id;

//錯誤方式

select stu.id,stu.name,exam.grade from stu, exam where stu.id(+)=exam.id(+);

asp連線oracle9i資料庫

最近做伺服器配置,作業系統為server2003 xp,程式指令碼語言asp,資料庫為orale9i 問題描述 資料庫連線方式如下 1 ole db provider for oracle from microsoft dim oconn,strconn set oconn server.creat...

資料庫的內連線 外連線

sql資料庫的連線 內連線 和外連線 左外連線 右外連線 和全連線 本次實驗在mysql資料庫中進行,資料庫初始表如下 一 內連線 結果僅包含符合連線條件的兩表中的行。如下 二 外連線 結果包含符合條件的行,同時包含不符合條件的行 分為左外連線 右外連線和全外連線 1 左外連線 左表全部行 右表匹配...

資料庫操作 內連線外連線

內連線 只連線匹配的行 左外連線 包含左邊表的全部行 不管右邊的表中是否存在與它們匹配的行 以及右邊表中全部匹配的行 右外連線 包含右邊表的全部行 不管左邊的表中是否存在與它們匹配的行 以及左邊表中全部匹配的行 全外連線 包含左 右兩個表的全部行,不管另外一邊的表中是否存在與它們匹配的行。表aid ...