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

MySQL में CONCAT और JOIN से अलग टेबल के कॉलम जोड़ें

MySQL में CONCAT() फ़ंक्शन और JOIN का उपयोग करके अलग-अलग टेबल के कॉलम मानों को जोड़ सकते हैं।

उदाहरण: पहला नाम + अंतिम नाम = पूरा नाम

1. पहली टेबल (पहला नाम)

mysql> CREATE TABLE DemoTable1 (FirstName VARCHAR(20));
mysql> INSERT INTO DemoTable1 VALUES('Chris'), ('David');
mysql> SELECT * FROM DemoTable1;
+-----------+
| FirstName |
+-----------+
| Chris     |
| David     |
+-----------+

2. दूसरी टेबल (अंतिम नाम)

mysql> CREATE TABLE DemoTable2 (LastName VARCHAR(20));
mysql> INSERT INTO DemoTable2 VALUES('Brown'), ('Miller');
mysql> SELECT * FROM DemoTable2;
+----------+
| LastName |
+----------+
| Brown    |
| Miller   |
+----------+

3. CROSS JOIN के साथ जोड़ें (सभी संयोजन)

mysql> SELECT CONCAT(t1.FirstName, ' ', t2.LastName) AS FullName
    -> FROM DemoTable1 t1
    -> CROSS JOIN DemoTable2 t2;

4. परिणाम (कार्टेशियन गुणनफल)

+----------------+
| FullName       |
+----------------+
| Chris Brown    |
| Chris Miller   |
| David Brown    |
| David Miller   |
+----------------+

JOIN प्रकार

JOIN प्रकारपरिणाम पंक्तियांउपयोग
CROSS JOINसभी संयोजन (M×N)सभी संयोजन चाहिए
INNER JOINमेल खाने वाली पंक्तियांसंबंधित डेटा
LEFT JOINबाएं टेबल की सभी + मेलवैकल्पिक संबंध

संबंधित डेटा के लिए (सामान्य मामला)

-- सामान्यीकृत डिज़ाइन में विदेशी कुंजी
SELECT CONCAT(u.first_name, ' ', u.last_name) AS full_name
FROM users u
JOIN profiles p ON u.id = p.user_id;

CONCAT विकल्प

  • CONCAT_WS(',', col1, col2, col3) - विभाजक के साथ (NULL अनदेखा करता है)
  • CONCAT(col1, col2) - कोई भी NULL होने पर NULL देता है
  1. - MySQL में GROUP_CONCAT और CASE से अलग शर्तों वाले समान कॉलम के मान जोड़ें

    एक ही कॉलम (Name) की अलग-अलग शर्तों (Subject) के मानों को जोड़ने के लिए CASE के साथ सशर्त एग्रीगेशन और CONCAT या GROUP_CONCAT का उपयोग करें। टेबल बनाएं mysql> CREATE TABLE DemoTable1869 ( Id INT, Subject VARCHAR(20), Name VARCHAR(20) ); डेटा डालें mysql> INSERT INTO DemoTable1869 VALUES(

  1. - MySQL में अलग कॉलम वाली टेबल में रिकॉर्ड कैसे कॉपी करें?

    MySQL में एक टेबल से दूसरी टेबल में डेटा कॉपी करने के लिए, जब कॉलम नाम या संरचना अलग हो, तो INSERT INTO ... SELECT स्टेटमेंट का उपयोग करें। यह कॉलम मैपिंग को स्पष्ट रूप से परिभाषित करने की अनुमति देता है। उदाहरण: अलग कॉलम नामों के साथ डेटा कॉपी स्रोत टेबल बनाएं (ऑटो-इन्क्रीमेंट प्राइमरी की के साथ)

  1. - MySQL में एकाधिक टेबल्स से रिकॉर्ड इन्सर्ट कैसे करें?

    MySQL में दो या अधिक टेबल्स से डेटा संयोजित करके तीसरी टेबल में इन्सर्ट करने के लिए, INSERT INTO ... SELECT के साथ क्रॉस जॉइन (कॉमा सिंटैक्स) या स्पष्ट JOIN का उपयोग करें। यह कार्टेशियन प्रोडक्ट (सभी संयोजन) या मिलान वाले संयोजन बना सकता है। उदाहरण: Name और Age टेबल से Student टेबल में कार्टेशियन प