新聞中心
當(dāng)我們想要在sqlserver中連接兩張表時(shí),我們可以采用內(nèi)聯(lián)接(Inner Join) 或外聯(lián)接(Outer Join)。

內(nèi)聯(lián)接允許在兩張表之間建立一個(gè)關(guān)聯(lián),查詢需要在兩兩表之間有共同的值(主鍵/外鍵)。關(guān)聯(lián)條件決定了檢索出的記錄取自待關(guān)聯(lián)表中的哪些數(shù)據(jù)。
例如,我們需要從小馬訂購記錄表中檢索訂購單里每種訂購產(chǎn)品的相關(guān)信息,我們可以用一條內(nèi)連接語句完成查詢,如下所示:
“`sql
SELECT O.OrderID, P.ProductID, P.ProductName, O.Quantity
FROM Order O
INNER JOIN Product P
ON O.ProductID = P.ProductID
ORDER BY O.ProductID;
外聯(lián)接時(shí),我們可以強(qiáng)制SQLServer在沒有和關(guān)聯(lián)表中的值匹配時(shí)也從關(guān)聯(lián)表中取值。
例如,我們需要查詢訂購表里全部記錄,同時(shí)輸出貨品信息,包括已發(fā)出與未發(fā)出的:
```sql
SELECT O.OrderID, P.ProductID, P.ProductName, O.Quantity
FROM Order O
LEFT OUTER JOIN Product P
ON O.ProductID = P.ProductID
ORDER BY O.ProductID;
我們使用內(nèi)聯(lián)接或外聯(lián)接取決于我們查詢的目的。當(dāng)我們想要取得完整有效的記錄時(shí),使用內(nèi)聯(lián)接;當(dāng)我們想要包括關(guān)聯(lián)另一表的完整記錄的記錄,即使沒有關(guān)聯(lián)鍵也行,使用外聯(lián)接。
總結(jié)一下,當(dāng)我們要連接兩個(gè)表時(shí),應(yīng)該根據(jù)查詢的目的確定是采用內(nèi)聯(lián)接還是外聯(lián)接,如查詢完整有效記錄,應(yīng)使用內(nèi)聯(lián)接,如需要包括關(guān)聯(lián)另一表全部記錄,即使沒有關(guān)聯(lián)鍵也可以,應(yīng)該使用外聯(lián)接。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
本文題目:連接SQLServer中連接兩表的實(shí)踐(sqlserver兩表)
網(wǎng)站URL:http://fisionsoft.com.cn/article/copchgd.html


咨詢
建站咨詢
