ใช้ฟังก์ชัน GROUP_CONCAT() ร่วมกับ CONCAT() เพื่อรวมค่าทั้งหมดในคอลัมน์เดียวให้เป็นสตริงเดียว คั่นด้วยเครื่องหมายคอมมา
สร้างตารางตัวอย่าง
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
FirstName VARCHAR(20)
);
เพิ่มข้อมูล
mysql> INSERT INTO DemoTable(FirstName) VALUES ('John');
mysql> INSERT INTO DemoTable(FirstName) VALUES ('Larry');
mysql> INSERT INTO DemoTable(FirstName) VALUES ('Chris');
mysql> INSERT INTO DemoTable(FirstName) VALUES ('Robert');
mysql> INSERT INTO DemoTable(FirstName) VALUES ('David');
ดูข้อมูลทั้งหมด
mysql> SELECT * FROM DemoTable;
+----+-----------+
| Id | FirstName |
+----+-----------+
| 1 | John |
| 2 | Larry |
| 3 | Chris |
| 4 | Robert |
| 5 | David |
+----+-----------+
คำสั่งรวมค่าพร้อมเพิ่มเครื่องหมายคำพูด
mysql> SELECT GROUP_CONCAT(CONCAT('"', FirstName, '"')) AS FirstName
-> FROM DemoTable;
ผลลัพธ์
+-----------------------------------------+
| FirstName |
+-----------------------------------------+
| "John","Larry","Chris","Robert","David" |
+-----------------------------------------+
เคล็ดลับ: สามารถเปลี่ยนตัวคั่นได้ด้วย SEPARATOR เช่น GROUP_CONCAT(...) SEPARATOR '; '