ใช้ SEPARATOR '\r\n' ใน GROUP_CONCAT() เพื่อคั่นแต่ละค่าด้วยบรรทัดใหม่ (CRLF)
สร้างตารางและเพิ่มข้อมูล
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
FirstName VARCHAR(20),
LastName VARCHAR(20)
);
mysql> INSERT INTO DemoTable(FirstName, LastName) VALUES
('John', 'Smith'), ('David', 'Miller'), ('John', 'Doe');
ดูข้อมูล
mysql> SELECT * FROM DemoTable;
+----+-----------+----------+
| Id | FirstName | LastName |
+----+-----------+----------+
| 1 | John | Smith |
| 2 | David | Miller |
| 3 | John | Doe |
+----+-----------+----------+
คำสั่ง GROUP_CONCAT พร้อมตัวคั่นบรรทัดใหม่
mysql> SELECT GROUP_CONCAT(
-> CONCAT_WS(' ', FirstName, LastName)
-> SEPARATOR '\r\n'
-> ) FROM DemoTable;
ผลลัพธ์ (แสดงเป็นบรรทัดเดียวใน terminal แต่จริงๆ มี \r\n คั่น)
+-------------------------------------------------------------------+
| GROUP_CONCAT(CONCAT_WS(' ', FirstName, LastName) SEPARATOR "\r\n") |
+-------------------------------------------------------------------+
| John Smith
David Miller
John Doe |
+-------------------------------------------------------------------+
คำอธิบาย:
CONCAT_WS(' ', FirstName, LastName)— รวมชื่อ-นามสกุลคั่น space (WS = With Separator)SEPARATOR '\r\n'— คั่นแต่ละรายการด้วย Carriage Return + Line Feed- ในโปรแกรมหรือเว็บที่รองรับ จะแสดงเป็นหลายบรรทัดจริง
ตัวเลือกอื่น: SEPARATOR '\n' (LF only) หรือ SEPARATOR ' (สำหรับ HTML)
'