MySQL में स्ट्रेट जॉइन इनर जॉइन या जॉइन की तरह काम करता है। इसका मतलब है कि यह केवल मिलान वाली पंक्तियों को लौटाता है। सबसे पहले, हमें MySQL में स्ट्रेट जॉइन को समझना होगा। उसके लिए, हमें दो टेबल बनाने होंगे और दोनों टेबल को विदेशी कुंजी बाधाओं से जोड़ना होगा।
यहाँ पहली तालिका है
mysql> क्रिएट टेबल फॉरेनटेबलडेमो-> (-> आईडी इंट,-> नेम वर्कर (100),-> एफके इंट->);क्वेरी ओके, 0 रो प्रभावित (0.47 सेकेंड)
यहाँ दूसरी तालिका है -
mysql> तालिका बनाएं PrimaryTableDemo-> (-> FK int,-> Address varchar(100),-> Primary key(FK)-> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.47 सेकंड)
उसके बाद, हम बाधाओं को जोड़ेंगे -
mysql> ALTER तालिका विदेशीटेबल डेमो बाधा जोड़ें FKConst विदेशी कुंजी(FK) संदर्भप्राइमरीटेबलडेमो(FK);क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (1.54 सेकंड)रिकॉर्ड:0 डुप्लिकेट:0 चेतावनियाँ:0
अब दूसरी तालिका में रिकॉर्ड जोड़ें -
mysql> PrimaryTableDemo मानों में सम्मिलित करें(1,'US'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.10 सेकंड)mysql> PrimaryTableDemo मानों में सम्मिलित करें (2, 'UK'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड) )mysql> PrimaryTableDemo मानों में सम्मिलित करें(3,'अज्ञात');क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.08 सेकंड)
रिकॉर्ड प्रदर्शित करना
mysql> PrimaryTableDemo से * चुनें;
निम्न आउटपुट है -
+-----+---------+| एफके | पता |+----+---------+| 1 | यूएस || 2 | यूके || 3 | अज्ञात |+-----+---------+3 पंक्तियाँ सेट में (0.00 सेकंड)
अब, पहली तालिका में रिकॉर्ड जोड़ें
mysql> फॉरेनटेबलडेमो वैल्यूज में INSERT (1,'जॉन',1);क्वेरी ओके, 1 रो प्रभावित (0.20 सेकंड)mysql> फॉरेनटेबलडेमो वैल्यूज में INSERT (2,'बॉब',2);क्वेरी ओके, 1 रो प्रभावित (0.27 सेकंड)
सेलेक्ट स्टेटमेंट की मदद से सभी रिकॉर्ड्स को प्रदर्शित करना -
mysql> फॉरेनटेबलडेमो से * चुनें;
निम्न आउटपुट है
<पूर्व>+----------+----------+------+| आईडी | नाम | एफके |+----------+----------+------+| 1 | जॉन | 1 || 2 | बॉब | 2 |+------+------+------+2 पंक्तियाँ सेट में (0.00 सेकंड)स्ट्रेट जॉइन की क्वेरी इस प्रकार है जो केवल मेल खाने वाली पंक्तियों को प्रदर्शित करती है -
mysql>ForeignTableDemo.Id, ForeignTableDemo.Name, PrimaryTableDemo.Address-> फॉरेनटेबलडेमो से-> स्ट्रेट_जॉइन प्राइमरीटेबलडेमो-> फॉरेनटेबलडेमो पर चुनें।FK=PrimaryTableDemo.FK;
निम्न आउटपुट है -
<पूर्व>+----------+------+-----------+| आईडी | नाम | पता |+------+------+------------+| 1 | जॉन | यूएस || 2 | बॉब | यूके |+------+------+------------+2 पंक्तियों में सेट (0.00 सेकंड)