2010-09-19 10:36
龍脈術士
|分類:資料庫db
|瀏覽4536次
2010-09-19 11:10
知識大富翁,挑戰答題贏iphone!
提問者採納
oracle特有的左外聯書寫方式,當然你也可以用傳統的通用的左外聯,比如給你舉個例子select s.name as 姓名,g.grade as 分數,c.cid as 課程名
from tbl_student s left outer join tbl_grade g on s.studentid=g.sid left outer join tbl_class c on g.cid=c.classid
它跟下面等價
select s.name as 姓名,g.grade as 分數,c.classname as 課程名
from tbl_student s,tbl_grade g,tbl_class c
where (s.studentid=g.sid(+)) and (g.cid=c.classid(+))
提問者評價2012-05-27 15:01
taozhenbeijing
|分類:資料庫db
|瀏覽2306次
2012-05-27 15:40
知識大富翁,挑戰答題贏iphone!
提問者採納
熱心網友
(+) 表示外連線。條件關聯時,一般只列出表中滿足連線條件的資料。如果條件的一邊出現(+),則可列出該表中在條件另一側的資料為空的那些記錄。比如兩個表:員工表和工資表。員工表中有總經理、a、b、c四條記錄,工資表中只有a、b、c三人的記錄。如果寫如下語句:
select 姓名,工資 from 員工表,工資表 where 員工表.姓名=工資表.姓名
那麼只可能但出a、b、c三人的記錄。
如果寫成:
select 姓名,工資 from 員工表,工資表 where 員工表.姓名(+)=工資表.姓名
則可列出總經理及a、b、c三人的記錄,只不過查詢結果中總經理對應的」工資「列值為空。
thank you!
偶遇Oracle中SQL語句中的
之前居然從來沒見到過此類寫法,諸如 select from t spolicy d,v policyemployee g where d.policyno g.policyno 查閱相關資料才發現此法就是外聯的另外一種表現形式其等同於 select from t spolicy d left joi...
Oracle的SQL語句中的變數替換
一.問題描述 如下sql insert into tmp val values a b view code 點選 確定 過後我們檢視表中的資料 b後面的字串沒有插入進去.二.原因解析 替代變數 sql plus中預設的 表示替代變數,當寫入 時,資料庫會要求其替換成其它的值。如,你可以定義 這樣插入...
Sql語句中的DDL語句
資料庫模式定義語言ddl data definition language 是用於描述資料庫中要儲存的現實世界實體的語言。主要由create 新增 alter 修改 drop 刪除 和 truncate 刪除 四個關鍵字完成。create database 資料庫名 建立乙個資料庫 create d...