Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ส่งคืนรายการจากแถวต่างๆ ลงในฟิลด์เดียวด้วย MySQL


สำหรับสิ่งนี้ ให้ใช้ GROUP_CONCAT() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable2024 -> ( -> SubjectName varchar(20), -> StudentName varchar(20) -> );Query OK, 0 แถวได้รับผลกระทบ (0.62 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable2024 ('MySQL', 'Chris'); เคียวรีตกลง, 1 แถวได้รับผลกระทบ (0.13 วินาที)mysql> แทรกลงในค่า DemoTable2024 ('MySQL', 'David'); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า DemoTable2024 ('MongoDB', 'Bob'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า DemoTable2024 ('Java', 'Sam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงในค่า DemoTable2024 ('MongoDB', 'Mike'); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก DemoTable2024;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-------------+-------------+| SubjectName | ชื่อนักเรียน |+-------------+-------------+| MySQL | คริส || MySQL | เดวิด || MongoDB | บ๊อบ || ชวา | แซม || MongoDB | Mike |+-------------+-------------+5 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อส่งคืนรายการจากแถวต่างๆ ลงในฟิลด์เดียว -

mysql> เลือก SubjectName,group_concat(StudentName) -> จาก DemoTable2024 -> จัดกลุ่มตาม SubjectName;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-------------+--------------------------+| SubjectName | group_concat(StudentName) |+-------------+--------------------------+| ชวา | แซม || MongoDB | บ๊อบ,ไมค์ || MySQL | Chris,David |+-------------+--------------------------+3 แถวใน ตั้งค่า (0.06 วินาที)