Добрый день. Есть примерно следующий запросик
SELECT value from MyTable WHERE id='1'
он оформлен хранимой процедурой на MS SQL2000. Можно ли сделать, что бы значения результата запроса формировались в строку примерно слудующего формата: значени1, значение2.....значениN. Что бы потом эту строку можно было вернуть из хранимой процедуры. Заранее спасибо.
Здравствуйте, Yury_M, Вы писали:
Y_M>Добрый день. Есть примерно следующий запросик
Y_M>SELECT value from MyTable WHERE id='1'
Y_M>он оформлен хранимой процедурой на MS SQL2000. Можно ли сделать, что бы значения результата запроса формировались в строку примерно слудующего формата: значени1, значение2.....значениN. Что бы потом эту строку можно было вернуть из хранимой процедуры. Заранее спасибо.
declare @Value varchar(255)
declare @Result varchar(1023)
declare res_cursor cursor FAST_FORWARD
for select value from MyTable WHERE id='1'
open res_cursor
fetch next from res_cursor into @Value
while @@fetch_status = 0
begin
set @Result = CASE
WHEN @Result is NULL then @Value
ELSE @Result + ',' + @Value
END
fetch next from res_cursor into @Value
end
close res_cursor
deallocate res_cursor
return @Result
Здравствуйте, Yury_M, Вы писали:
Y_M>он оформлен хранимой процедурой на MS SQL2000. Можно ли сделать, что бы значения результата запроса формировались в строку примерно слудующего формата: значени1, значение2.....значениN. Что бы потом эту строку можно было вернуть из хранимой процедуры. Заранее спасибо.
create procedure GetById (
@id int,
@return varchar(8000) output
)
as
set @return=''
select @return=@return + value + ',' from MyTable where id=@id
... << RSDN@Home 1.1.4 beta 1 >>
Если можно, напишите как сделать, что бы повторяющиеся поля не включались в запрос.
Спасибо.
Здравствуйте, Yury_M, Вы писали:
Y_M>Если можно, напишите как сделать, что бы повторяющиеся поля не включались в запрос.
Y_M>Спасибо.
S>>S>>create procedure GetById (
S>> @id int,
S>> @return varchar(8000) output
S>>)
S>>as
S>> set @return=''
S>> select @return=@return + value + ',' from MyTable where id=@id group by value
S>>
... << Rsdn@Home 1.1.4 beta 1 >> В winamp'е зажигает silent
