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

Bagaimana untuk Menukar Nilai MySQL menjadi Rentetan Dipisahkan Koma?

Barbara Streisand
Barbara Streisandasal
2024-11-04 18:00:03581semak imbas

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;

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"

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;

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"

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!

Kenyataan:
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