Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Penggabungan string oleh for xml path

Subquery Anda tidak dapat mengembalikan dua nilai. Jika Anda hanya ingin menggabungkan string, Anda tidak memerlukan xml tipe data sama sekali. Anda dapat melakukan stuff() dan subquery dalam satu pernyataan:

declare @Rep1Names nvarchar(max) = (
    stuff((select ', [' + report_name + ']' as name
           from (select distinct report_order, report_name
                 from #report
                ) x
           order by report_order
           for xml path('')
          )
         ), 1, 1, '');

declare @Rep2Names nvarchar(max) = (
    stuff(select ', isnull([' + report_name + '], 0) as [' + report_name + ']' as res
           from (select distinct report_order, report_name
                 from #report
                ) x
           order by report_order
           for xml path('')
          )
   ), 1, 1, '');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menangani beberapa pembaruan db dari c # di SQL Server 2008

  2. Bagaimana cara membatasi NULL sebagai parameter untuk prosedur tersimpan SQL Server?

  3. Cara Membuat Tabel di SQL Server menggunakan Query

  4. Hasilkan nomor acak yang tidak ada di tabel di server sql

  5. Penyatuan Koneksi di .NET/SQL Server?