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

MySQL में एकाधिक टेक्स्ट रिकॉर्ड को एक में कैसे संयोजित करें?

MySQL में GROUP_CONCAT() फ़ंक्शन का उपयोग करके एकाधिक पंक्तियों के टेक्स्ट मानों को एक स्ट्रिंग में जोड़ा जा सकता है। कस्टम विभाजक भी निर्दिष्ट किया जा सकता है।

सिंटैक्स

GROUP_CONCAT(column_name [SEPARATOR 'separator_string'])

उदाहरण

तालिका बनाएं और शब्द डालें:

mysql> CREATE TABLE DemoTable (Value TEXT);
mysql> INSERT INTO DemoTable VALUES 
    -> ('John'), ('is'), ('learning'), ('Java'), ('with'), ('MySQL Database');

डेटा

+----------------+
| Value          |
+----------------+
| John           |
| is             |
| learning       |
| Java           |
| with           |
| MySQL Database |
+----------------+

स्पेस विभाजक के साथ संयोजित करें

mysql> SELECT GROUP_CONCAT(Value SEPARATOR ' ') 
    -> FROM DemoTable;

परिणाम

+-------------------------------------------+
| group_concat(Value separator ' ')         |
+-------------------------------------------+
| John is learning Java with MySQL Database |
+-------------------------------------------+

महत्वपूर्ण विकल्प

  • SEPARATOR - डिफ़ॉल्ट कॉमा (,) है, कस्टम स्ट्रिंग निर्दिष्ट करें
  • DISTINCT - डुप्लिकेट मान हटाएं: GROUP_CONCAT(DISTINCT Value)
  • ORDER BY - क्रम नियंत्रित करें: GROUP_CONCAT(Value ORDER BY Value)
  • LIMIT - परिणाम सीमित करें (MySQL 8.0+)

डिफ़ॉल्ट सीमा

group_concat_max_len सिस्टम वेरिएबल डिफ़ॉल्ट 1024 बाइट्स तक सीमित करता है। बढ़ाएं:

SET SESSION group_concat_max_len = 1000000;

उपयोग केस

  • CSV निर्यात
  • टैग सूची बनाना
  • संबंधित डेटा को एक फील्ड में संयोजित करना
  • रिपोर्टिंग के लिए पंक्तियों को समूहित करना
  1. - MySQL में एकल INSERT से एकाधिक रिकॉर्ड तेजी से डालें

    बल्क इंसर्ट सिंटैक्स से प्रदर्शन सुधारें एक ही INSERT स्टेटमेंट में कई मान सेट अल्पविराम से अलग करके डालें। सिंटैक्स: insert into yourTableName values(val1,val2,...),(val1,val2,...),...; उदाहरण: mysql> create table DemoTable2007 ( Amount1 int, Amount2 int, Amount3 int ); Query OK, 0 rows affected

  1. - MySQL में CASE WHEN और GROUP BY से कई पंक्तियों को एक पंक्ति में कैसे संयोजित करें?

    पिवट/क्रॉस-टैब पैटर्न select company_name, max(case when country_name=US then employee_name end) as US_Employee_Name, max(case when country_name=UK then employee_name end) as UK_Employee_Name, max(case when country_name=AUS then employee_name end) as AUS_Employee_Name from demo68 group by

  1. एकाधिक एक्सेल वर्कशीट्स को एक सिंगल वर्कबुक में सहजता से मर्ज करें एकाधिक एक्सेल वर्कशीट्स को एक सिंगल वर्कबुक में सहजता से मर्ज करें

    माइक्रोसॉफ्ट एक्सेल के साथ काम करते समय, वर्कशीट्स को संयोजित करने से हमें डेटा व्यवस्थित करने में मदद मिल सकती है क्योंकि हम समान डेटा को एक सिंगल वर्कबुक में एकीकृत कर सकते हैं। संयोजन वह प्रणाली है जो कई दस्तावेजों को एक सिंगल फ़ाइल में एकीकृत करती है। इस लेख में, हम एक्सेल में एकाधिक वर्कशीट्स क