2016-04-14 14 views
0

Tablolardan, hemen tablodan ve ekli bir tablodan biri gibi birden çok alana dayalı olarak katılmaya çalışıyorum.Birden çok tabloyu kullanarak birden çok tablo kullanarak Tablolara katılma

enter image description here

Ben ContractDetailID üzerinde "Sözleşme Detay" yalnızca Ekipmanları CustomerID = Sözleşme CustomerID için "Ekipman" katılmak istiyorum. Kullandığınız hangi DBMS

+1

şimdiden teşekkürler? Bunu okumak isteyebilirsiniz: http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload-images-of-code-on-so-when-asking-a-question/ 285557 # 285557 –

+0

Microsoft SQL DB – Charles

+0

Olası çoğaltılabilir [SQL çoklu tabloya katıl] (http://stackoverflow.com/questions/9853586/sql-join-multiple-tables) –

cevap

0
declare @contract as table(
    contractid int, 
    customerid int 
) 

declare @contractDetail as table(
    contractDetailId int, 
    ContractID int 
) 

declare @equipment as table(
    equipmentId int, 
    contractDetailId int, 
    CustomerId int 
) 

insert into @contract values(5,3) 
insert into @contractDetail values(10,5) 
insert into @equipment values(1,10,3) 

select e.* 
from 
    @contract c inner join 
    @contractDetail cd on (c.contractId = cd.contractID) inner join 
    @equipment e on (c.customerId = e.CustomerId and e.contractDetailId = cd.contractDetailId)