Apabila bekerja dengan data dalam pangkalan data hubungan seperti MySQL, anda selalunya perlu menggabungkan rentetan untuk mengekstrak maklumat berharga atau memanipulasi data untuk tujuan tertentu. Klausa GROUP BY dalam MySQL menyediakan cara yang berkuasa untuk mengumpulkan data dan menggunakan fungsi agregat (seperti cantuman) untuk mencipta hasil ringkasan.
Untuk menggabungkan rentetan menggunakan GROUP BY, anda boleh menggunakan fungsi GROUP_CONCAT(). Fungsi ini menerima tiga parameter:
Contoh
Pertimbangkan jadual berikut dengan dua lajur: foo_id dan foo_name:
foo_id | foo_name |
---|---|
1 | A |
1 | B |
2 | C |
Untuk menggabungkan nilai foo_name untuk setiap foo_id unik dan memisahkannya dengan ruang, anda boleh menggunakan pertanyaan berikut:
<code class="language-sql">SELECT foo_id, GROUP_CONCAT(foo_name SEPARATOR ' ') FROM table GROUP BY foo_id;</code>
Jadual yang dijana akan kelihatan seperti ini:
foo_id | foo_name |
---|---|
1 | A B |
2 | C |
Memahami GROUP_CONCAT()
Seperti yang ditunjukkan dalam dokumentasi MySQL (https://www.php.cn/link/807c2fa13d210319043db7c80d7cfb00() fungsi mengembalikan rentetan yang mengandungi nilai bukan NULL sambungan daripada kumpulan. Jika terdapat tiada nilai bukan NULL dalam nilai NULL kumpulan, mengembalikan NULL.
Dalam contoh di atas, fungsi ini menggabungkan nilai foo_name untuk setiap foo_id dalam klausa GROUP BY. Parameter SEPARATOR menentukan bahawa setiap nilai harus dipisahkan oleh aksara ruang.Menggunakan GROUP BY dengan GROUP_CONCAT() anda boleh menggabungkan rentetan dengan mudah dan mencipta hasil ringkasan daripada data terkumpul, menyediakan penyelesaian serba boleh untuk tugas manipulasi data dalam MySQL.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Rentetan Menggunakan GROUP BY dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!