Проблема SQL FOR XML Path

У меня есть этот запрос так:

SELECT JOB_NUMBER AS 'Key' FROM table FOR XML PATH(''), Type

Который возвращает:

<Key>ORC0023</Key><Key>ORC0045</Key>

То, что я пытаюсь сделать, это вернуть это так:

<ORC0023></ORC0023><ORC0045></ORC0045>

Как бы я это сделал?

1 ответ

Поскольку ваш вывод будет иметь специальные символы < > вам нужно будет вернуть результат в формате XML, указав type и использовать xquery извлечь его как строку

declare @t table (job_number varchar(10))
insert into @t
select 'ORC0023' union all
select 'ORC0024' 

select
(
    select '<' + job_number + '></' + job_number + '>' 
    from @t
    for xml path(''), type
).value('/', 'varchar(max)')
Другие вопросы по тегам