台灣最大程式設計社群網站
線上人數
1439
 
會員總數:246224
討論主題:189786
歡迎您免費加入會員
討論區列表 >> 專欄文章 >> SQL 語法中Join的觀念與用法
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
SQL 語法中Join的觀念與用法
價值 : 0 QP  點閱數:3446 回應數:0
樓主

站務人員 站長
門外漢
0 1580
542 9
發送站內信

捐贈 VP 給 站務人員

JOIN連接組合兩個資料表中的欄位記錄,包括三種:

INNER JOIN運算式:連接組合兩個資料表中的欄位記錄。
LEFT JOIN運算式:連接組合兩個資料表中的欄位記錄,並將包含了LEFT JOIN左邊資料表中的全部記錄。
RIGHT JOIN運算式:連接組合兩個資料表中的欄位記錄,並將包含了RIGHT JOIN右邊資料表中的全部記錄。
INNER JOIN設定兩個資料表相關連的運算式,以連接組合兩個資料表中的欄位記錄。

INNER JOIN語法如下:

FROM 資料表1 INNER JOIN 資料表2 ON 資料表1.欄位1 比較運算子 資料表2.欄位2

兩個資料表連接的欄位,譬如 [資料表1.欄位1=資料表2.欄位2],必須具有相同的欄位類型,但是欄位名稱不需要相同。

例如,自動編號欄位類型可以連接Long 的欄位類型,但是單精準數欄位類型不能連接倍精準數的欄位類型。

比較運算子可為=、<、>、<=、>=、或<>。

JOIN連接的欄位,不可以包含MEMO欄位類型或OLE物件類型,否則會發生錯誤。

在一個JOIN陳述式中,可以連結多個ON子句:

SELECT fields
FROM 資料表1 INNER JOIN 資料表2
ON 資料表1.欄位1 比較運算子 資料表2.欄位1 AND
ON 資料表1.欄位2 比較運算子 資料表2.欄位2) OR
ON 資料表1.欄位3 比較運算子 資料表2.欄位3)

JOIN陳述式中,可以為巢狀式:

SELECT fields
FROM 資料表1 INNER JOIN
(資料表2 INNER JOIN [( ]資料表3
[INNER JOIN [( ] 資料表x [INNER JOIN ...)]
ON 資料表3.欄位3 比較運算子 資料表x.欄位x)]
ON 資料表2.欄位2 比較運算子 資料表3.欄位3)
ON 資料表1.欄位1 比較運算子 資料表2.欄位2

在一個INNER JOIN中,可以包括巢狀式的LEFT JOIN或RIGHT JOIN,但是在一個LEFT JOIN或RIGHT JOIN中不能包括巢狀式的INNER JOIN。

本篇文章發表於2001-07-05 00:00
目前尚無任何回覆
   

回覆
如要回應,請先登入.