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

MySQL JOINS की मदद से टेबल्स के बीच INTERSECTION कैसे लागू करें?

MySQL में INTERSECTION ऑपरेशन को सीधे INTERSECT कीवर्ड से सपोर्ट नहीं किया जाता, लेकिन इसे INNER JOIN का उपयोग करके आसानी से लागू किया जा सकता है। वास्तव में, INTERSECTION बस सभी कॉलम्स पर एक INNER JOIN है।

उदाहरण के साथ समझें

मान लीजिए हमारे पास दो टेबल्स value1 और value2 हैं जिनमें निम्न डेटा है:

mysql> SELECT * FROM value1;
+------+------+
| i    | j    |
+------+------+
| 1    | 1    |
| 2    | 2    |
+------+------+

mysql> SELECT * FROM value2;
+------+------+
| i    | j    |
+------+------+
| 1    | 1    |
| 3    | 3    |
+------+------+

अब दोनों टेबल्स के बीच INTERSECTION पाने के लिए निम्न क्वेरी चलाएं:

mysql> SELECT * FROM value1 JOIN value2 USING(i, j);
+------+------+
| i    | j    |
+------+------+
| 1    | 1    |
+------+------+

व्याख्या: USING(i, j) क्लॉज दोनों टेबल्स के i और j कॉलम्स पर मैच करता है। केवल वही पंक्तियाँ वापस आती हैं जो दोनों टेबल्स में मौजूद हों — यही INTERSECTION है।

मुख्य बिंदु

  • MySQL में INTERSECT कीवर्ड नहीं है (MariaDB 10.3+ में है)।
  • INNER JOIN ... USING(कॉलम_सूची) या ON क्लॉज से समान परिणाम मिलता है।
  • सभी कॉलम्स पर JOIN करना सुनिश्चित करता है कि पूरी पंक्ति मेल खाए।
  1. - MySQL में स्टोरेज इंजन के साथ सभी टेबल कैसे दिखाएं?

    INFORMATION_SCHEMA.TABLES से इंजन फिल्टर करके टेबल सूची प्राप्त करें। InnoDB टेबल देखें SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE = InnoDB; पूरी डिटेल SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE = InnoDB; आउटपुट में TABLE_SCHEMA, TABLE_NAME, ENGINE, ROW_FORMAT, TABLE_

  1. - MySQL में सबसे अधिक ID वाली रो चुनें: ORDER BY DESC LIMIT 1

    MySQL टेबल से अधिकतम ID वाली पंक्ति कैसे प्राप्त करें किसी टेबल से सबसे अधिक (उच्चतम) ID वाली रो प्राप्त करने का सबसे सरल और कुशल तरीका ORDER BY ... DESC के साथ LIMIT 1 का उपयोग करना है। सिंटैक्स: SELECT * FROM yourTableName ORDER BY yourColumnName DESC LIMIT 1 OFFSET 0; OFFSET 0 वैकल्पिक है (डि

  1. - MySQL में टेबल्स के निर्माण और अद्यतन की तारीख कैसे जानें

    MySQL में create_time या update_time का उपयोग करके टेबल्स के निर्माण और अद्यतन की सटीक तारीख प्राप्त करें। सबसे पहले, SHOW कमांड का उपयोग करें। सिंटैक्स इस प्रकार है SHOW TABLE STATUS; हम अपने डेटाबेस test3 पर विचार कर रहे हैं, जिसमें पहले से कुछ टेबल्स हैं use test3; Database changed अब डेटाबे