Menggabungkan Entri Pendua dalam MySQL Menggunakan GROUP_CONCAT
Panduan ini menerangkan cara untuk menggabungkan baris dengan nilai foo_id
yang sama, menggabungkan entri foo_name
yang sepadan ke dalam rentetan tunggal dalam jadual MySQL.
Penyelesaian: GROUP_CONCAT dan GROUP BY
FungsiMySQL GROUP_CONCAT
, digunakan bersama dengan GROUP BY
, menyelesaikan masalah ini dengan cekap. Inilah pertanyaannya:
<code class="language-sql">SELECT id, GROUP_CONCAT(name SEPARATOR ' ') FROM table GROUP BY id;</code>
Pecahan Pertanyaan:
SELECT id, GROUP_CONCAT(name SEPARATOR ' ')
: Ini memilih lajur id
dan menggunakan GROUP_CONCAT
untuk menggabungkan nilai lajur name
untuk setiap kumpulan. SEPARATOR ' '
menentukan ruang sebagai pembatas antara nama yang digabungkan.FROM table
: Menunjukkan jadual yang mengandungi data.GROUP BY id
: Himpunkan baris berdasarkan nilai unik dalam lajur id
.Cara ia Berfungsi:
GROUP_CONCAT
mengagregatkan nilai bukan NULL daripada setiap kumpulan yang ditakrifkan oleh GROUP BY
. Pemisah memastikan kebolehbacaan dengan meletakkan ruang antara nama yang digabungkan. Ini menggabungkan baris dengan id
yang sama dengan berkesan, mencipta satu baris dengan semua nama yang berkaitan digabungkan menjadi satu rentetan.
Bacaan Lanjut:
Untuk mendapatkan maklumat yang lebih komprehensif tentang GROUP_CONCAT
, rujuk dokumentasi MySQL rasmi: https://www.php.cn/link/18fc3b6cc1e55ccea877c161e2e9ba27
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Rentetan dalam MySQL Menggunakan GROUP BY?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!