कॉलम मानों को CSV के रूप में प्रदर्शित करने के लिए GROUP_CONCAT() का उपयोग करें।
आइए पहले एक टेबल बनाते हैं:
mysql> create table DemoTable786 (
StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
StudentName varchar(100) ) AUTO_INCREMENT=101;
Query OK, 0 rows affected (0.70 sec)
इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें:
mysql> insert into DemoTable786(StudentName) values('Chris');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable786(StudentName) values('Robert');
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable786(StudentName) values('Mike');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable786(StudentName) values('Sam');
Query OK, 1 row affected (0.12 sec)
सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:
mysql> select * from DemoTable786;
यह निम्नलिखिक आउटपुट देगा:
+-----------+-------------+ | StudentId | StudentName | +-----------+-------------+ | 101 | Chris | | 102 | Robert | | 103 | Mike | | 104 | Sam | +-----------+-------------+ 4 rows in set (0.00 sec)
MySQL में कॉलम को CSV के रूप में चुनने की क्वेरी
mysql> select group_concat(StudentId), group_concat(StudentName) from DemoTable786;
यह निम्नलिखिक आउटपुट देगा:
+-------------------------+---------------------------+ | group_concat(StudentId) | group_concat(StudentName) | +-------------------------+---------------------------+ | 101,102,103,104 | Chris,Robert,Mike,Sam | +-------------------------+---------------------------+ 1 row in set (0.00 sec)
GROUP_CONCAT विकल्प
SEPARATOR: कस्टम विभाजकGROUP_CONCAT(Name SEPARATOR '; ')ORDER BY: सॉर्ट क्रमGROUP_CONCAT(Name ORDER BY Name)DISTINCT: डुप्लिकेट हटाएंGROUP_CONCAT(DISTINCT Name)group_concat_max_len: डिफ़ॉल्ट 1024 बाइट्स, बढ़ाया जा सकता है
उदाहरण: कस्टम विभाजक और सॉर्टिंग
SELECT GROUP_CONCAT(StudentName ORDER BY StudentName SEPARATOR ' | ') FROM DemoTable786;