Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mendapatkan Keputusan SQL Agregat Dipisahkan Koma Menggunakan GROUP BY?

Bagaimana untuk Mendapatkan Keputusan SQL Agregat Dipisahkan Koma Menggunakan GROUP BY?

Barbara Streisand
Lepaskan: 2025-01-07 20:23:40
asal
288 orang telah melayarinya

How to Retrieve Comma-Separated Aggregated SQL Results Using GROUP BY?

Menjana Data Agregat Dipisahkan Koma dalam SQL dengan GROUP BY

Panduan ini menerangkan cara mengagregat data dalam SQL dengan cekap, mengeluarkan hasil sebagai senarai dipisahkan koma yang dikumpulkan mengikut lajur tertentu. Ini ialah tugas SQL biasa dengan beberapa penyelesaian.

Cabarannya

Bayangkan jadual berstruktur seperti ini:

ID Value
1 a
1 b
2 c

Matlamatnya adalah untuk menyatukan data ini, mengumpulkan mengikut lajur ID dan menggabungkan entri Value yang sepadan ke dalam rentetan dipisahkan koma tunggal untuk setiap kumpulan.

Penyelesaian: Memanfaatkan UNTUK LALUAN XML

Kaedah yang kuat dan ringkas menggunakan binaan FOR XML PATH:

<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

Pertanyaan ini menggunakan subkueri dengan FOR XML PATH('') untuk menjana perwakilan XML bagi nilai yang digabungkan. Kaedah .value('.', 'NVARCHAR(MAX)') mengekstrak ini sebagai rentetan. Akhir sekali, STUFF mengalih keluar koma dan ruang di hadapan.

Penerokaan Selanjutnya

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

  • SQL: Menggabungkan Data daripada Berbilang Jadual ke dalam Senarai Dipisahkan Koma Tunggal
  • Teknik SQL yang Cekap untuk Pengagregatan Rentetan

Dengan menggunakan kaedah FOR XML PATH atau meneroka teknik SQL yang lain, anda boleh mengagregat dan mempersembahkan data anda dengan berkesan dalam format yang mesra pengguna, dipisahkan koma.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Keputusan SQL Agregat Dipisahkan Koma Menggunakan GROUP BY?. 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