สำหรับสิ่งนี้ ให้ใช้ GROUP_CONCAT() พร้อมกับคำสั่งย่อย ORDER BY ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable1588 -> ( -> StudentId int, -> StudentFirstName varchar(20), -> StudentMarks int -> );Query OK, 0 แถวได้รับผลกระทบ (0.49 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable1588 (110,'Bob',78); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที)mysql> ลงในค่า DemoTable1588 (101,'Sam',78); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DemoTable1588 (105, 'Mike', 78) แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.26 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -
mysql> เลือก * จาก DemoTable1588;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------+---------------------------------------+ | รหัสนักศึกษา | StudentFirstName | StudentMarks |+-----------+-----------+------------+| 110 | บ๊อบ | 78 || 101 | แซม | 78 || 105 | ไมค์ | 78 |+-----------+--------------------------+-------------+3 แถวในชุด (0.00 วินาที)นี่คือแบบสอบถามเพื่อเรียกใช้ฟังก์ชันการรวมในลำดับการจัดเรียง -
mysql> เลือก group_concat(ลำดับ StudentFirstName โดยตัวคั่น StudentId '--') จาก DemoTable1588 -> กลุ่มโดย StudentMarks
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อน>+--------------------------------------------- --------------------+| group_concat(ลำดับ StudentFirstName โดยตัวคั่น StudentId '---') |+------------------------------------------ ------------------------------+| แซม -- ไมค์ -- บ๊อบ |+----------------------------------------- -------------------------------------- +1 แถวในชุด (0.04 วินาที)