select A.BAG_NO1,A.AWB_NO,A.TEMP_NO,B.OUT_DATE,A.SHPR_NAME,A.BUSINESS_ATTN,A.SHPR_ADDR,A.SHPR_TEL,A.CNEE_NAME,A.CNEE_ADDR,A.CNEE_TEL,A.CMDTY_NAME,A.PKG,A.GW,A.CLASS,A.CLEAR_CMP,A.AWB_DATE,A.ORIGIN_STN,A.DEST_STN,A.CCN_STN,A.STN_TIME from EHU_AWB A,EHU_CNL B where A.CNL_NO = B.CNL_NO order by A.AWB_DATE desc
由於A.CNL_NO = B.CNL_NO這個條件,所以當表EHU_AWB沒有CNL_NO時候,就查詢不出來,現在想要把EHU_AWB中的所有資料查詢出來,也跟EHU_CNL連接,但是左連接也必須有倉單號。怎麼改?
----使用左连接啊,找本书好好看看,很容易理解
select A.BAG_NO1,
A.AWB_NO,
A.TEMP_NO,
B.OUT_DATE,
A.SHPR_NAME,
A.BUSINESS_ATTN,
A.SHPR_ADDR,
A.SHPR_TEL,
A.CNEE_NAME,
A.CNEE_ADDR,
A.CNEE_TEL,
A.CMDTY_NAME,
A.PKG,
A.GW,
A.CLASS,
A.CLEAR_CMP,
A.AWB_DATE,
A.ORIGIN_STN,
A.DEST_STN,
A.CCN_STN,
A.STN_TIME
from EHU_AWB A, EHU_CNL B
where A.CNL_NO = B.CNL_NO(+)
order by A.AWB_DATE desc
左连 A所有记录 , B与A.相关记录(没有则null)
右边 B所有记录 , A与B.相关记录(没有则null)
Full 外连 A所有记录+B.所有记录双方没有则 null
select * from EHU_AWB A right join EHU_CNL B on A.CNL_NO = B.CNL_NO
或
select * from EHU_AWB A full join EHU_CNL B on A.CNL_NO = B.CNL_NO