2011-11-02 15 views
13

वर्तमान में मैं यह प्रश्न कर रहा हूं:2 से अधिक टेबल के साथ बाएं जॉइन कैसे करें?

select a.x, b.x, c.x 
from number as a, customer as b, numbergroup as c 
where a.b = b.b and a.c = c.c and c.b = b.b 

हालांकि, मैं तालिका "ए" से रिकॉर्ड्स पुनर्प्राप्त करना चाहता हूं, भले ही "एसी = नल", जिसे "ए" और "सी" के बीच शामिल होने के कारण पुनर्प्राप्त नहीं किया गया है "।

मुझे "बाएं शामिल" (http://www.w3schools.com/sql/sql_join_left.asp) के बारे में जानकारी मिली है, लेकिन मुझे नहीं पता कि यह कैसे करें जब क्वेरी में दो से अधिक टेबल शामिल हों इस मामले में।

किसी भी मदद या मार्गदर्शन की सराहना की जाएगी।

+2

क्या आप दो शामिल बयानों का उपयोग नहीं कर सकते? 'Table_a से चुनें xyz बाएं जॉइन table_b xyz = xyz LEFT जॉइन table_c पर xyz = xyz' [MySQL मैन्युअल] (http://dev.mysql.com/doc/refman/5.0/en/join पर एक नज़र डालें। एचटीएमएल) – dwalldorf

+2

आप जानते हैं कि इस प्रश्न की क्या ज़रूरत है? अधिक डुप्लिकेट उत्तर;) * पहले * सही उत्तर – Phil

उत्तर

32
select a.x, b.x, c.x 
from number as a 
left join customer as b on a.b = b.b 
left join numbergroup as c on a.c = c.c and c.b = b.b 
+5

+1 यदि 'संख्या' के परिणामों में कुछ भी नहीं है, तो आपको अभी भी' ग्राहक 'से परिणाम प्राप्त करने की आवश्यकता है, जबकि अभी भी' संख्या समूह 'में शामिल होना चाहिए '? यह उस मामले में काम नहीं करता है! – Phil

+0

के लिए –

+0

यह बहुत उपयोगी था धन्यवाद –

संबंधित मुद्दे