खैर लियोनिद सही टेबल जॉइन है जो आपको चाहिए। "एक SQL जॉइन क्लॉज का उपयोग दो या दो से अधिक तालिकाओं से पंक्तियों को संयोजित करने के लिए किया जाता है, जो उनके बीच एक सामान्य क्षेत्र पर आधारित होता है।" - http://www.w3schools.com/sql/sql_join.asp इतना ही आसान। आप टेबल ए और टेबल बी के लिए कहते हैं कि सामान्य क्षेत्र शॉपलॉट है और टेबल बी और सी के लिए कंटेनररफ कंटेनर आईडी से मेल खाता है।
आइए ट्रे को चरण दर चरण करते हैं।
तो सबसे पहले हम उन टेबलों में से कॉलम चुनें जिन्हें हम दिखाना चाहते हैं
SELECT Table_A.ID, Table_A.UnitTypeID, Table_A.ShopLot, Table_B.ID, Table_B.UnitTypeID,
Table_B.ContainerRef, Table_C.ID, Table_C.PartTypeID
आप देखते हैं कि शॉपलॉट और कंटेनररफ केवल एक ही है क्योंकि यह सामान्य फ़ील्ड है जैसा कि हमने पहले कहा था और एक ही तारीख को एक पंक्ति में दो बार दिखाने की कोई आवश्यकता नहीं है।
अगला कदम यह देखना होगा कि हम इस कॉलम को कहां से चुनें। इस चरण में हम इस अलग टेबल से पंक्तियों को जोड़ते हैं और मूल रूप से चुनिंदा स्टेटमेंट से इन सभी कॉलमों के साथ एक टेबल बनाते हैं। यह इस तरह दिखेगा
FROM Table_A
INNER JOIN Table_B
ON Table_A.ShopLot = Table_B.ShopLot
INNER JOIN Table_C
ON Table_B.ContainerRef = Table_C.ContainerId
यहाँ क्या हुआ है। पहले हमने कहा कि Table_A से चुनें (कुछ) और (आंतरिक) उसे Table_B के साथ शामिल करें ... और उत्तर Table_A.ShopLot और Table_B.ShopLot फ़ील्ड पर है। Table_A से एक पंक्ति लें, ShopLot फ़ील्ड का मान देखें और Table_B में उस मान के साथ सभी पंक्तियों को खोजें (यदि है तो) और उनसे जुड़ें। Table_C उसी तरह जुड़ता है जैसे केवल फ़ील्ड का नाम बदला जाता है।
तीसरे चरण की तुलना में WHERE क्लॉज बनाना है। यह शायद सबसे आसान हिस्सा है क्योंकि अब हमारे पास एक बड़ी टेबल है और हमें बस वही कहना है जो हमें चाहिए
WHERE Table_A.UnitTypeID='PAD' AND Table_B.UnitType.ID='FROG'
AND Table_C.PartTypeID='FLIES'
और बस। मैंने जितना हो सके इसे सरल बनाने की कोशिश की। मुझे यकीन है कि ऑनलाइन बहुत अधिक स्पष्टीकरण है, बस थोड़ी खोज करने की जरूरत है...
यहाँ एक पूरा कोड है:
SELECT Table_A.ID, Table_A.UnitTypeID, Table_A.ShopLot, Table_B.ID, Table_B.UnitTypeID,
Table_B.ContainerRef, Table_C.ID, Table_C.PartTypeID
FROM Table_A
INNER JOIN Table_B
ON Table_A.ShopLot = Table_B.ShopLot
INNER JOIN Table_C
ON Table_B.ContainerRef = Table_C.ContainerId
WHERE Table_A.UnitTypeID='PAD' AND Table_B.UnitType.ID='FROG'
AND Table_C.PartTypeID='FLIES'
मुझे उम्मीद है कि इससे थोड़ी मदद मिलेगी, यह जटिल नहीं है क्योंकि यह पहली नज़र में है। यह बेहतर होगा यदि उदाहरण दो टेबल के साथ हो लेकिन यह वही है। जीएल