MySQL-এ GROUP_CONCAT() দিয়ে গ্রুপ করা কলামের সব মান একসাথে দেখানো
যদি একটি কলামে (GROUP BY) গ্রুপ করে অন্য কলামের সব মান কমা-সেপারেটেডভাবে একসাথে দেখতে চান, তবে GROUP_CONCAT() ফাংশন ব্যবহার করা হয়।
সিনট্যাক্স
SELECT groupColumn, GROUP_CONCAT(otherColumn) FROM yourTableName GROUP BY groupColumn;
উদাহরণ সহ ব্যাখ্যা
টেবিল তৈরি:
mysql> CREATE TABLE groupByOneSelectAll (
-> StudentDetails VARCHAR(100),
-> StudentName VARCHAR(100)
-> );
ডেটা ইনসার্ট:
mysql> INSERT INTO groupByOneSelectAll VALUES('StudentFirstName', 'John');
mysql> INSERT INTO groupByOneSelectAll VALUES('StudentFirstName', 'Chris');
mysql> INSERT INTO groupByOneSelectAll VALUES('StudentFirstName', 'Robert');
mysql> INSERT INTO groupByOneSelectAll VALUES('StudentFirstName', 'Bob');
mysql> INSERT INTO groupByOneSelectAll VALUES('StudentFirstName', 'David');
বর্তমান ডেটা:
mysql> SELECT * FROM groupByOneSelectAll;
+------------------+-------------+ | StudentDetails | StudentName | +------------------+-------------+ | StudentFirstName | John | | StudentFirstName | Chris | | StudentFirstName | Robert | | StudentFirstName | Bob | | StudentFirstName | David | +------------------+-------------+
গ্রুপ করি:
mysql> SELECT StudentDetails, GROUP_CONCAT(StudentName)
-> FROM groupByOneSelectAll
-> GROUP BY StudentDetails;
ফলাফল:
+------------------+-----------------------------+ | StudentDetails | group_concat(StudentName) | +------------------+-----------------------------+ | StudentFirstName | John,Chris,Robert,Bob,David | +------------------+-----------------------------+
টিপ: ডিফল্ট সেপারেটর কমা (,)। পরিবর্তন করতে: GROUP_CONCAT(StudentName SEPARATOR '; ')। সোর্ট করতে: GROUP_CONCAT(StudentName ORDER BY StudentName)।