2016-04-03 19 views
2

Sen benim son umudumsun. Bütün günümü harcadım ama bu sorguyu nasıl oluşturacağına karar vermedim.karmaşık iç birleştirme sql

Bu her depolama

Her liste şefi ve işverenden oluşan 1 liste sahip

enter image description here

benim şimdiki veritabanı diyagramıdır. Onlar hakkında bilgi şeyler masada.

Ne yapmaya çalışırım? Tüm depolama alanı (kare adres), worker_name, worker_surname, chief_name, chief_surname. Şimdiye kadar

select storage_address, 
storage_square, 
stuffs.stuff_name as chiefSurname, 
stuffs.stuff_surname as chiefName from storages 
inner join storageRoster on storageRoster.storageRoster_id=storages.storage_roster_id 
inner join Chiefs on storageRoster.chief_id = Chiefs.chief_id 
inner join stuffs on Chiefs.chief_stuff_id = stuffs.stuff_id 

var Ama bu sorguda ben sadece her depolama şefleri alabilirsiniz ne

. Yardım lütfen. Umutsuzum.

+0

iç sadece, bir tane tutarak hata ayıklama deneyebilirsiniz dışarı veriler, onun sert t yardımıyla, kibrit dönecektir katılmak Bir seferde katılın – TheGameiswar

+0

Sorunuza İşçi ve başka bir Malzeme (İşçi verileri elde etmek için) katmalısınız. – RubioRic

cevap

3

Sen başkanı için bir kez işçi için ve bir kez, iki kez şeyler tablosunu katılması gerekir:

select storage_address, 
storage_square, 
cs.stuff_name as chiefSurname, 
cs.stuff_surname as chiefName, 
ws.stuff_name as workerSurname, 
ws.stuff_surname as workerName 
from storages 
inner join storageRoster on storageRoster.storageRoster_id=storages.storage_roster_id 
inner join Chiefs on storageRoster.chief_id = Chiefs.chief_id 
inner join stuffs cs on Chiefs.chief_stuff_id = cs.stuff_id 
inner join Workers on storageRoster.worker_id = Workers.chief_id 
inner join ws cs on Workers.worker_stuff_id = ws.stuff_id 
+0

yardımcı olmaktan mutluluk :-) –

İlgili konular