MySQL जुड़ता है
MySQL जॉइनिंग टेबल्स
JOIN
दो या दो से अधिक तालिकाओं की पंक्तियों को उनके बीच संबंधित कॉलम के आधार पर संयोजित करने के लिए एक क्लॉज का उपयोग किया जाता है।
आइए "आदेश" तालिका से चयन देखें:
OrderID | CustomerID | OrderDate |
---|---|---|
10308 | 2 | 1996-09-18 |
10309 | 37 | 1996-09-19 |
10310 | 77 | 1996-09-20 |
फिर, "ग्राहक" तालिका से चयन देखें:
CustomerID | CustomerName | ContactName | Country |
---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mexico |
ध्यान दें कि "आदेश" तालिका में "ग्राहक आईडी" कॉलम "ग्राहक" तालिका में "ग्राहक आईडी" को संदर्भित करता है। उपरोक्त दो तालिकाओं के बीच संबंध "ग्राहक आईडी" कॉलम है।
फिर, हम निम्नलिखित SQL कथन बना सकते हैं (जिसमें a शामिल है
INNER JOIN
), जो उन अभिलेखों का चयन करता है जिनमें दोनों तालिकाओं में मिलान मान हैं:
उदाहरण
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
और यह कुछ इस तरह का उत्पादन करेगा:
OrderID | CustomerName | OrderDate |
---|---|---|
10308 | Ana Trujillo Emparedados y helados | 9/18/1996 |
10365 | Antonio Moreno Taquería | 11/27/1996 |
10383 | Around the Horn | 12/16/1996 |
10355 | Around the Horn | 11/15/1996 |
10278 | Berglunds snabbköp | 8/12/1996 |
MySQL में जॉइन के समर्थित प्रकार
INNER JOIN
: उन रिकॉर्ड्स को लौटाता है जिनमें दोनों तालिकाओं में मेल खाने वाले मान होते हैंLEFT JOIN
: बाईं तालिका से सभी रिकॉर्ड और दाईं तालिका से मिलान किए गए रिकॉर्ड लौटाता हैRIGHT JOIN
: दाएँ तालिका से सभी रिकॉर्ड लौटाता है, और बाएँ तालिका से मिलान किए गए रिकॉर्ड लौटाता हैCROSS JOIN
: दोनों तालिकाओं से सभी रिकॉर्ड लौटाता है