Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menjana Senarai Dibatasi Koma Nama Pekerja mengikut Jabatan dalam SQL Server?
Pertanyaan SQL Server ini dengan cekap mencipta senarai nama pekerja yang dipisahkan koma, disusun mengikut jabatan, daripada jadual EMP
. Proses ini bijak menggunakan subkueri dan teknik manipulasi rentetan.
Subkueri, tertanam dalam klausa FOR XML PATH('')
, mengumpulkan nama pekerja untuk setiap jabatan. Penggabungan ini berlaku tanpa teg XML, menghasilkan serpihan XML yang mengandungi semua nama pekerja untuk jabatan tertentu. Serpihan ini disimpan dalam pembolehubah allemp
.
Seterusnya, fungsi REPLACE
menggantikan ruang dalam rentetan allemp
dengan koma, mengubahnya menjadi senarai dipisahkan koma yang dikehendaki. Hasil akhir, dikumpulkan mengikut deptno
, menyediakan satu baris bagi setiap jabatan, memaparkan nama pekerja yang dipisahkan koma.
Inilah outputnya:
<code>deptno allemp 10 CLARK,KING,MILLER 20 SMITH,JONES,SCOTT,ADAMS,FORD 30 ALLEN,WARD,MARTIN,BLAKE,TURNER,JAMES</code>
Klausa FOR XML PATH('')
, tanpa alias yang jelas, menjana serpihan XML tanpa melampirkan teg. Untuk pengendalian aksara XML khas yang lebih mantap, pertimbangkan untuk menambah kata kunci TYPE
(seperti yang ditunjukkan dalam lampiran), memastikan pelarian yang betul.
Kaedah ini menawarkan penyelesaian praktikal untuk menjana senarai dipisahkan koma, berguna untuk eksport data atau penjanaan laporan.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Senarai Dibatasi Koma Nama Pekerja mengikut Jabatan dalam SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!