Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 For XML куда теги деваются?  [new]
minva
Member

Откуда: г. Калуга
Сообщений: 1198
Голову сломал, как это работает? Исходная задача - соединение строк в одну. Порылся по форуму, нашел пример
[src]declare @tab table(n varchar(10))
insert into @tab (N)
values('A<>@"')
insert into @tab (N)
values('B&')
insert into @tab (N)
values('B')

--1
select n from @tab
--2
select '22' + n from @tab
--3
select n from @tab for xml path('')
--4
select '22' + n from @tab for xml path('')

куда в 4 запросе деваются теги. На основании чего?
19 июл 18, 11:33    [21584402]     Ответить | Цитировать Сообщить модератору
 Re: For XML куда теги деваются?  [new]
Kopelly
Member

Откуда: Красноярск
Сообщений: 289
minva, Если так?

select '22' + n as n from @tab for xml path('')
19 июл 18, 11:39    [21584443]     Ответить | Цитировать Сообщить модератору
 Re: For XML куда теги деваются?  [new]
Konst_One
Member

Откуда:
Сообщений: 11517
а что хотел то?
может это?

--5
select (select '22' + n from @tab for xml path(''), TYPE).value('.', 'varchar(max)')
19 июл 18, 11:40    [21584445]     Ответить | Цитировать Сообщить модератору
 Re: For XML куда теги деваются?  [new]
Rankatan
Member

Откуда:
Сообщений: 250
minva,
в "select n from @tab" есть точное название столбца "n", в "select '22' + n" произошла арифметическая операция и как после этого должен называться столбец? поэтому пишите "select '22' + n as n".

Иногда требуется сделать обратное, для этого пишут "select n as 'text()' from @tab"
19 июл 18, 11:43    [21584467]     Ответить | Цитировать Сообщить модератору
 Re: For XML куда теги деваются?  [new]
minva
Member

Откуда: г. Калуга
Сообщений: 1198
Konst_One
а что хотел то?
может это?


В итоге это, но на промежуточном этапе, пока разбирался как это работает, наткнулся на описанную выше непонятку
В принципе Rankatan ответил доходчиво. Т.е. можно написать select '' + n и тем самым избавиться от тегов
Всем спасибо.
19 июл 18, 11:53    [21584524]     Ответить | Цитировать Сообщить модератору
 Re: For XML куда теги деваются?  [new]
minva
Member

Откуда: г. Калуга
Сообщений: 1198
Rankatan
Иногда требуется сделать обратное, для этого пишут "select n as 'text()' from @tab"


А что имелось ввиду под "сделать обратное"?
19 июл 18, 11:55    [21584538]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить