2015-07-20 50 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!非常感谢! –