Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menghimpunkan Data dan Menggabungkan Nilai dengan Pemisah Koma dalam SQL?

Bagaimana untuk Menghimpunkan Data dan Menggabungkan Nilai dengan Pemisah Koma dalam SQL?

Susan Sarandon
Lepaskan: 2025-01-07 19:56:41
asal
722 orang telah melayarinya

How to Group Data and Concatenate Values with Comma Separators in SQL?

Pengumpulan dan Penggabungan SQL dengan Pemisah Koma

Panduan ini menunjukkan cara menulis pertanyaan SQL yang mengumpulkan data dan menggabungkan nilai agregat menggunakan pemisah koma. Bayangkan jadual seperti ini:

<code>| ID | Value |
|-----|-------|
| 1   | a     |
| 1   | b     |
| 2   | c     |</code>
Salin selepas log masuk

Matlamatnya adalah untuk menjana set hasil di mana nilai untuk ID yang sama digabungkan menjadi rentetan dipisahkan koma tunggal:

<code>| ID | Value |
|-----|-------|
| 1   | a,b   |
| 2   | c     |</code>
Salin selepas log masuk

Penyelesaian menggunakan FOR XML PATH:

Konstruk FOR XML PATH menyediakan cara yang cekap untuk mencapai ini:

<code class="language-sql">SELECT
    ID,
    STUFF((SELECT ', ' + Value
           FROM YourTable t2 WHERE t1.ID = t2.ID
           FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 2, '') AS Values
FROM YourTable t1
GROUP BY ID;</code>
Salin selepas log masuk

Fungsi STUFF mengalih keluar koma di hadapan dan ruang yang ditambahkan oleh pernyataan SELECT. Pendekatan ini biasanya lebih disukai kerana prestasi dan kebolehbacaannya.

Bacaan Lanjut:

Untuk senario yang lebih maju dan teknik alternatif, terokai sumber ini:

  • Limpahan Tindanan: Benang Limpahan Tindanan yang berkaitan membincangkan cabaran penggabungan yang serupa (cari "kumpulan SQL mengikut gabungan").
  • Dokumentasi Pelayan SQL: Rujuk dokumentasi rasmi Microsoft untuk mendapatkan maklumat terperinci tentang FOR XML PATH dan fungsi yang berkaitan.

Respons yang disemak ini meningkatkan kejelasan, memberikan penjelasan yang lebih ringkas dan menawarkan pautan yang berguna untuk pembelajaran selanjutnya. Imej kekal dalam kedudukan asalnya.

Atas ialah kandungan terperinci Bagaimana untuk Menghimpunkan Data dan Menggabungkan Nilai dengan Pemisah Koma dalam SQL?. 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