2015-07-20 92 views
0

你好我目前正在大學的SQL入門。我們正在爲開發人員使用Murach SQL Sever 2012。我目前在第4章,我不瞭解什麼是加入條件。我知道這是表明應該如何比較兩個表,但我不明白的是語法。在SQL中加入條件

SELECT InvoiceNumber, Vendor name 
FROM Vendors JOIN Invoices 
      ON Vendors.VendorID = Invoices.VendorID; 

爲什麼叫.VendorID

對不起,如果這是模糊的。

+0

但爲什麼不是你谷歌關於這個主題的一些教程? - 只需編寫「SQL連接解釋」或類似的谷歌。 –

+0

爲什麼我不在這裏問一下?這不是本網站的要點嗎? –

回答

0

通過LINQ查詢在SQL中實現連接條件:

var result =(from e in employee 
       join v in vendor where e.EmployeeId equals v.EmployeeId 
       select new 
       { 
        EmployeeName = e.employeeName, 
        EmployeeSalary =e.employeeSalary, 
        VendorName = v.vendorName, 
        VendorDate =v.VendorDate,   
       }).ToList(); 
    return (result); 
1

連接子句結合關係數據庫中兩個或更多表的記錄。

例子:

如果你有兩個表名爲VendorsInvoices。現在,您正在尋找基於id的兩個表格之間的共同數據,即VendorId

但是,首先,您需要訪問表的列。所以,你需要指定哪個表哪列。然後,它就像mytable.thiscolumn

同樣,在你的情況下,你試圖訪問VendorId列,它們存在於兩個表中。所以,你明確地說,我需要VendorIdVendorsInvoices

1

VendorID是表VendorsInvoices中列的名稱。因爲,如果你有一臺名爲Event和表內的列是日期例如,您可以指定該屬性時指出Event.date

+0

那麼它是否將兩個表格與VendorID進行比較? –

+0

它比較表Vendors和Invoices的VendorID值,確保id在Vendors和Invoices中都是(例如)123。僅當「Vendors」表的供應商ID與「Invoices」表的供應商ID相同時,才顯示發票號和供應商名稱。 –

+0

好吧,我明白了!我不知道我的數據庫中都有VendorID!非常感謝! –