Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Dapatkan Keputusan Pertanyaan MySQL sebagai Senarai Dipisahkan Koma?

Bagaimanakah Saya Boleh Dapatkan Keputusan Pertanyaan MySQL sebagai Senarai Dipisahkan Koma?

Linda Hamilton
Lepaskan: 2025-01-17 02:13:10
asal
961 orang telah melayarinya

How Can I Retrieve MySQL Query Results as a Comma-Separated List?

Dapatkan hasil pertanyaan MySQL sebagai senarai dipisahkan koma

Dalam MySQL, anda mungkin perlu mendapatkan semula hasil pertanyaan sebagai senarai dipisahkan koma. Walaupun anda boleh menggunakan subqueries untuk mengekstrak maklumat tertentu, anda menghadapi beberapa batasan apabila ia datang untuk mempersembahkan data dalam format yang diingini.

Soalan:

Pertimbangkan pertanyaan berikut:

<code class="language-sql">SELECT p.id, p.name, 
       (SELECT name 
          FROM sites s 
         WHERE s.id = p.site_id) AS site_list
  FROM publications p</code>
Salin selepas log masuk

Subkueri mengembalikan setiap nama tapak sebagai lajur yang berasingan, yang tidak sepadan dengan hasil senarai yang dipisahkan koma yang dikehendaki.

Penyelesaian:

MySQL menyediakan fungsi GROUP_CONCAT untuk mencapai matlamat ini. Dengan memanfaatkan fungsi ini, anda boleh mengubah suai pertanyaan anda seperti berikut:

<code class="language-sql">SELECT p.id, p.name, GROUP_CONCAT(s.name) AS site_list
FROM sites s
INNER JOIN publications p ON(s.id = p.site_id)
GROUP BY p.id, p.name;</code>
Salin selepas log masuk

GROUP_CONCAT Menggabungkan nilai dalam lajur yang ditentukan (dalam kes ini, lajur "nama" dalam jadual "tapak") dan memisahkannya dengan pembatas yang telah ditetapkan (biasanya koma). Hasilnya kemudian dikumpulkan mengikut lajur "id" dan "nama" dalam jadual "penerbitan", menyediakan rekod unik untuk setiap penerbitan dan tapak berkaitannya, yang dipaparkan sebagai senarai dipisahkan koma.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Keputusan Pertanyaan MySQL sebagai Senarai 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