Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

बिना शर्त के MySQL जॉइन का उपयोग कैसे करें?

<घंटा/>

हम बिना शर्त के 'क्रॉस जॉइन' का उपयोग कर सकते हैं। क्रॉस जॉइन कार्टेशियन उत्पाद रूप में परिणाम देता है। उदाहरण के लिए, यदि एक टेबल में 3 रिकॉर्ड हैं और दूसरी टेबल में 2 रिकॉर्ड हैं, तो पहला रिकॉर्ड सभी दूसरे टेबल रिकॉर्ड से मेल खाएगा। फिर, यही प्रक्रिया दूसरे रिकॉर्ड आदि के लिए दोहराई जाएगी।

क्रॉस जॉइन का उदाहरण

पहली तालिका बनाना

mysql> क्रिएट टेबल फॉरेनटेबलडेमो -> ( -> आईडी इंट, -> नाम वर्कर(100), -> एफके इंट -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.47 सेकंड)

दूसरी तालिका बनाना

mysql> तालिका बनाएं PrimaryTableDemo -> ( -> FK int, -> पता varchar(100), -> प्राथमिक कुंजी (FK) -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.47 सेकंड)

बाधाएं जोड़ना

mysql> ALTER तालिका विदेशीटेबल डेमो बाधा जोड़ें FKConst विदेशी कुंजी (FK) संदर्भ PrimaryTableDemo (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 सेकंड)

SELECT कमांड का उपयोग करके रिकॉर्ड प्रदर्शित करना।

mysql> फॉरेनटेबलडेमो से * चुनें;

निम्न आउटपुट है।

<पूर्व>+----------+----------+------+| आईडी | नाम | एफके |+----------+----------+------+| 1 | जॉन | 1 || 2 | बॉब | 2 |+------+------+------+2 पंक्तियाँ सेट में (0.00 सेकंड)

हमने सभी तालिकाओं के लिए एक विदेशी कुंजी बाधा बना दी है। अब, बिना ऑन के 'क्रॉस जॉइन' का उपयोग करने के लिए, आइए सिंटैक्स देखें।

mysql> विदेशीटेबल डेमो चुनें। 

यहाँ आउटपुट है।

<पूर्व>+----------+------+-----------+| आईडी | नाम | पता |+------+------+------------+| 1 | जॉन | यूएस || 2 | बॉब | यूएस || 1 | जॉन | यूके || 2 | बॉब | यूके || 1 | जॉन | अज्ञात || 2 | बॉब | अज्ञात |+----------+------+------------+6 पंक्तियों में सेट (0.00 सेकंड)

  1. मैं MySQL में @ चिह्न का उपयोग कैसे करूँ?

    @ चिह्न का उपयोग करने के लिए, MySQL SET कमांड का उपयोग करें। उपयोगकर्ता द्वारा परिभाषित चर सेट करने के लिए @sign का उपयोग किया जाता है। निम्नलिखित वाक्य रचना है - सेट @anyVariableName:=yourValue; आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.51 सेकंड) इंसर्ट कमांड का उपयोग करके ट

  1. MySQL क्वेरी में केस कंडीशन के साथ काउंट का उपयोग कैसे करें?

    MySQL में इसके लिए CASE WHEN का उपयोग करें और गणना करने के लिए COUNT () विधि के अंदर CASE स्थिति सेट करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.61 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1374(Name,Score) मानों (एडम, 89) में डालें; क्वेरी ठ

  1. MySQL में सेलेक्ट में if/else कंडीशन का उपयोग कैसे करें?

    आइए पहले एक टेबल बनाएं - तालिका बनाएं DemoTable1966 ( UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, UserName varchar(20), PhotoLiked int );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1966 में डालें (उपयोगकर्ता नाम, PhotoLiked) म