GROUP_CONCAT() के साथ WHERE क्लॉज का उपयोग करके केवल विशिष्ट शर्त पूरी करने वाली पंक्तियों के मानों को संयोजित करें।
टेबल बनाना और डेटा डालना
mysql> CREATE TABLE DemoTable (
PlayerName VARCHAR(40),
PlayerStatus TINYINT(1)
);
Query OK, 0 rows affected (0.60 sec)
mysql> INSERT INTO DemoTable VALUES('Chris',1),('David',0),('Sam',1),('Carol',1),('Bob',0);
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable;
आउटपुट:
+------------+--------------+
| PlayerName | PlayerStatus |
+------------+--------------+
| Chris | 1 |
| David | 0 |
| Sam | 1 |
| Carol | 1 |
| Bob | 0 |
+------------+--------------+
स्टेटस=1 वाले नामों को संयोजित करने के लिए क्वेरी
mysql> SELECT GROUP_CONCAT(PlayerName)
FROM DemoTable
WHERE PlayerStatus = 1;
परिणाम:
+--------------------------+
| group_concat(PlayerName) |
+--------------------------+
| Chris,Sam,Carol |
+--------------------------+
1 row in set (0.00 sec)
नोट: डिफ़ॉल्ट सेपरेटर अल्पविराम है। GROUP_CONCAT(PlayerName SEPARATOR ' | ') के साथ कस्टमाइज़ करें। अधिकतम लंबाई group_concat_max_len सिस्टम वेरिएबल द्वारा नियंत्रित होती है (डिफ़ॉल्ट 1024)।