Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menggabungkan Rentetan Dalam KUMPULAN Pelayan SQL DENGAN Menggunakan FOR XML PATH?

Bagaimana untuk Menggabungkan Rentetan Dalam KUMPULAN Pelayan SQL DENGAN Menggunakan FOR XML PATH?

DDD
Lepaskan: 2025-01-25 02:08:08
asal
753 orang telah melayarinya

How to Concatenate Strings Within a SQL Server GROUP BY Using FOR XML PATH?

Gabungan pintar penggabungan rentetan SQL Server dan GROUP BY

Dalam SQL Server, terdapat cara yang bijak untuk menggabungkan FOR XML dan PATH untuk menggabungkan rentetan dalam operasi GROUP BY.

Matlamatnya adalah untuk menukar data berikut:

<code>id       Name       Value
1          A          4
1          B          8
2          C          9</code>
Salin selepas log masuk

Tukar kepada:

<code>id          Column
1          A:4, B:8
2          C:9</code>
Salin selepas log masuk

Langkah-langkahnya adalah seperti berikut:

  1. Buat jadual sementara: Cipta jadual sementara dengan skema yang sama seperti jadual asal.

  2. Masukkan data sampel: Masukkan data sampel ke dalam jadual sementara.

  3. Sambungkan rentetan menggunakan FOR XML dan PATH: Gabungkan rentetan dalam setiap kumpulan ID menggunakan kaedah FOR XML dan PATH. Ini termasuk:

    • Pilih lajur ID dan Name.
    • Gunakan subkueri untuk mendapatkan Name dan Value untuk setiap rekod dalam kumpulan ID yang sama.
    • Sertai lajur , dan Name menggunakan pembatas (contohnya, Value).
    • Gunakan FOR XML PATH('') untuk menukar hasil kepada XML.
    • Ekstrak rentetan bercantum daripada XML menggunakan kaedah TYPE dan value().
  4. Kumpulkan mengikut ID dan gunakan STUFF: untuk mengumpulkan hasil mengikut ID. Gunakan fungsi STUFF untuk mengalih keluar pembatas utama (contohnya, koma) daripada rentetan sambungan.

  5. Pilih Hasil akhir: Memilih ID dan bercantum Name dan Value rentetan sebagai Column lajur.

  6. Padam jadual sementara: Padam jadual sementara selepas operasi selesai.

Pendekatan ini memanfaatkan kuasa FOR XML dan PATH untuk menggabungkan rentetan dengan cekap dalam operasi GROUP BY tanpa menggunakan kursor, gelung atau fungsi yang ditentukan pengguna.

Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Rentetan Dalam KUMPULAN Pelayan SQL DENGAN Menggunakan FOR XML PATH?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan