自然連線的一個測試

shuangoracle發表於2012-05-09
建測試表
create table t1(id number,name varchar2(10));
insert into t1 values(1,'A');
insert into t1 values(2,'B');
create table t2(id number,name varchar2(10));
insert into t2 values(1,'A');
insert into t2 values(3,'C');
commit;
SQL> select t1.id,t1.name,t2.id,t2.name
 2 from t1 natural join t2;
select t1.id,t1.name,t2.id,t2.name
from t1 natural join t2

ORA-25155: NATURAL 聯接中使用的列不能有限定詞

SQL> select id,name
 2 from t1 natural join t2;
 ID NAME
---------- ----------
 1 A

SQL> select t1.id,t1.name,t2.id,t2.name
 2 from t1 join t2 on t1.id=t2.id and t1.name=t2.name;
 ID NAME ID NAME
---------- ---------- ---------- ----------
 1 A 1 A
由以上測試說明:做自然連線的兩個表預設是將表中對應欄位匹配相等或可以隱式轉換的。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24496749/viewspace-723173/,如需轉載,請註明出處,否則將追究法律責任。

相關文章