sql - how to get full outer join in left and right join order -
कृपया नीचे दी गई स्क्रिप्ट देखें
declare @ table1 तालिका (col1 int) घोषित करें @ टेबल 2 @ टेबल 1 मान (2) में @ टेबल 1 मान (3) डालें @ table1 मानों (5) में डालें @ टेबल 1 मूल्यों में सम्मिलित करें (7) @ टेबल 2 मानों में डालें @ टेबल 2 मूल्यों में डालें (2) @ टेबल 2 मूल्यों में डालें (2) @ टेबल 2 मानों में डालें (2) @ टेबल 2 मानों में डालें (6) @ टेबल 2 मानों में सम्मिलित करें (4) @ टेबल 2 मानों में डालें (7) <1> मामला 1:
चुनें @ से तालिका 1 बाएं बाहरी जुड़ें @ टेबल 2 बी पर a.col1 = b.col2 आदेश col1 परिणाम 1:
col1 col2 ----------- ----------- | 1 | 1 | | 2 | नल | | 3 | 3 | | 3 | 3 | | 5 | नल | | 7 | 7 | --------------------------- केस 2:
<कोड > तालिका 2 से दाएं बाहरी सहभागी @ टेबल 2 बी पर कॉल करें। परिणाम 2:
col1 col2 ----------- ----------- | 1 | 1 | | 3 | 3 | | 3 | 3 | | नल | 4 | | नल | 6 | | 7 | 7 | --------------------------- वास्तविक केस:
तालिका 1 से एक पूर्ण बाहरी जोड़ने @ तालिका 2 बी पर a.col1 = b.col2 चुनें> वास्तविक परिणाम: col1 col2 --- चुनें -------- ----------- | 1 | 1 | | 2 | नल | | 3 | 3 | | 3 | 3 | | 5 | नल | | 7 | 7 | | नल | 6 | | नल | 4 | --------------------------- अपेक्षित परिणाम:
कॉल 1 कॉल 2 ----------- ----------- | 1 | 1 | | 2 | नल | | 3 | 3 | | 3 | 3 | | नल | 4 | | 5 | नल | | नल | 6 | | 7 | 7 | --------------------------- मैंने सभी के साथ बाएं और दायां जुड़ने की क्वेरी की कोशिश की लेकिन यह परिणाम सेट में युगल। क्या ऐसा कोई तरीका है जो मुझे यह अनुमानित आउटपुट प्राप्त हो सकता है।
धन्यवाद, एसेन।
< P> आप उपयोग कर सकते हैं SELECT * FROM @ table1 एक पूर्ण बाहरी सम्मिलित करें @ table2b पर a.col1 = b.col2 ORDER द्वारा Isnull (col1, col2) अपनी वांछित ऑर्डर प्राप्त करने के लिए बिना ORDER BY कोई आदेश की गारंटी नहीं है।
Comments
Post a Comment