2014-11-01 201 views
-3

我有4個表如下:獲取元素名稱

tbProjekt 
-------------- 
Id 

每臺機器都有ProjektId屬於:

tblMaszyna 
-------------- 
Id 
ProjektId 


tblElement 
-------------- 
Id 
Name 

此表我正在關聯用機器元素:

tblMaszElem 
-------------- 
Id 
IdElem 
IdMach 

我想採取這些元素 - 來自tblElement的屬於屬於指定Pro的機器的名稱jectId。因此,讓我們說ProjectId 10我如何實現這一目標?

+0

一些事情你缺少親愛的,tblMaszyna與其他表格的鏈接是什麼。 tbProjekt在哪裏使用。在tblMaszElem中,Idelem,idmach是什麼? – Ajay2707 2014-11-01 11:39:56

回答

0
select e.Name 
from tbElement e 
inner join tbMaszElem me on me.IdElem = e.Id 
inner join tbMaszyna m on m.Id = me.IdMach 
inner join tbProject p on p.Id = m.ProjektId 
where 
    p.Id = 10 

這應該做。這將選擇其關聯到是關聯到一個項目,一臺機器在tbElement表中的所有條目的名稱列在項目編號爲10

0

請檢查該樣本及其註釋

select 
    te.name 
from 
    tblMaszElem tmem 
inner join tblElement te on te.id = tmem.IdElem 
inner join tblMaszyna tmzy on tmzy.id = tmem.IdMach 
--inner join tbProjekt tp on tp.id = tmzy.ProjektId --i think this should be avoidable 
where 
    tp.id = 10 
+0

爲了避免連接,它需要使用'WHERE tmzy.ProjektId = 10'來代替。 – chrisb 2014-11-01 12:29:28