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

Как преобразовать колонку таблици (строковый тип ограниченной длины) в одну строку неогранниченной длины через заданный разделитель?
27 мар 12, 19:52    [12323404]     Ответить | Цитировать Сообщить модератору
 Re: Преобразовать колонку таблици в строку через разделитель?  [new]
invm
Member

Откуда: Москва
Сообщений: 9824
//https://www.sql.ru/faq/faq_topic.aspx?fid=130
27 мар 12, 20:29    [12323595]     Ответить | Цитировать Сообщить модератору
 Re: Преобразовать колонку таблици в строку через разделитель?  [new]
______sql234_______
Guest
invm,

create table #test (id int, txt varchar(20))

insert #test values (1,'first')
insert #test values (2,'second')
insert #test values (3,'third')
insert #test values (4,'four')

select (select txt + ';' as 'data()' from #test for xml path(''))

drop table #test


А почему вставляет еще пустой символ между строк?
Результат:
first; second; third; four;

Можна как то указать в запросе чтобы не вставлял?
27 мар 12, 20:45    [12323656]     Ответить | Цитировать Сообщить модератору
 Re: Преобразовать колонку таблици в строку через разделитель?  [new]
invm
Member

Откуда: Москва
Сообщений: 9824
select (select txt + ';' from #test for xml path(''), type).value('.', 'varchar(max)')
27 мар 12, 20:58    [12323688]     Ответить | Цитировать Сообщить модератору
 Re: Преобразовать колонку таблици в строку через разделитель?  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
______sql234_______,

select (select txt + ';' from #test for xml path(''),type).value('.', 'varchar(max)') result
27 мар 12, 21:02    [12323701]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить