sql >> Database teknologi >  >> RDS >> Sqlserver

Sammenkædning af strenge til xml-sti

Din underforespørgsel kan ikke returnere to værdier. Hvis du blot ønsker at sammenkæde strenge, behøver du ikke xml datatype overhovedet. Du kan gøre stuff() og underforespørgsel i en enkelt sætning:

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. Hvilken indbygget dotNet-datatype er mest passende til at formidle SQL Server-hierarchyId-værdier?

  2. Kopier elementer fra treeview tkinter

  3. GeoIP-tabel forbindes med tabel over IP'er i MySQL

  4. Sådan filtreres dato ved hjælp af datetimepicker via database