Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menukar Nilai MySQL menjadi Rentetan Dipisahkan Koma?

Bagaimana untuk Menukar Nilai MySQL menjadi Rentetan Dipisahkan Koma?

Barbara Streisand
Lepaskan: 2024-11-04 18:00:03
asal
647 orang telah melayarinya

How to Convert MySQL Values into a Comma-Separated String?

Menukar Nilai MySQL Terpilih menjadi Rentetan Dipisahkan Koma

Apabila bekerja dengan MySQL, selalunya perlu mengambil data dan menukarnya menjadi format yang lebih terurus. Satu keperluan biasa ialah mengubah senarai nilai yang dipilih menjadi rentetan yang dipisahkan koma.

Pertimbangkan senario berikut: Anda mempunyai jadual bernama table_level dengan lajur dipanggil id dan lajur parent_id. Anda mahu memilih semua nilai id dengan parent_id bersamaan dengan 4 dan menukarnya menjadi rentetan dipisahkan koma tunggal.

Pernyataan Masalah:

Kod awal anda ialah seperti berikut:

SELECT id
FROM table_level
WHERE parent_id = 4;
Salin selepas log masuk

Pertanyaan ini akan mengembalikan nilai id dengan betul, tetapi ia akan memaparkannya sebagai baris individu, menjadikannya sukar untuk berfungsi dengannya sebagai rentetan tunggal.

Output yang Diingini:

Output yang dikehendaki hendaklah dalam format rentetan dipisahkan koma berikut:

"5,6,9,10,12,14,15,17,18,779"
Salin selepas log masuk
Salin selepas log masuk

Penyelesaian:

Untuk mencapai output yang dikehendaki, anda boleh menggunakan fungsi GROUP_CONCAT() MySQL. Fungsi ini menggabungkan nilai dari lajur tertentu, dipisahkan oleh pembatas tertentu. Dalam kes ini, pembatas akan menjadi koma.

Pertanyaan Diubah Suai:

SELECT GROUP_CONCAT(id)
FROM table_level
WHERE parent_id = 4
GROUP BY parent_id;
Salin selepas log masuk

Pertanyaan yang diubah suai ini menggunakan GROUP_CONCAT() untuk menggabungkan nilai id, dipisahkan dengan koma, ke dalam satu rentetan. Klausa GROUP BY memastikan bahawa penggabungan dilakukan hanya untuk nilai parent_id yang ditentukan (4 dalam kes ini).

Output:

Melaksanakan pertanyaan yang diubah suai akan menghasilkan output rentetan dipisahkan koma yang dikehendaki:

"5,6,9,10,12,14,15,17,18,779"
Salin selepas log masuk
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menukar Nilai MySQL menjadi Rentetan Dipisahkan Koma?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan