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

Откуда:
Сообщений: 26
Здравствуйте,
у меня лузерский вопрос, запроса типа:
DECLARE @u varchar(MAX)
SET @u = '+stringa+';
DECLARE @y int
SET @y = 0

WHILE @y < 5
	BEGIN     
	
	SELECT @u
	SET @y = @y + 1  
	END   

Очевидно у меня выводится 5 SELECT запросов по одной строке на каждом
Вопрос как вывести один SELECT c пятью строками в нем?

Подскажите пожалста ребят :)
1 июн 15, 12:33    [17714848]     Ответить | Цитировать Сообщить модератору
 Re: WHILE + один SELECT с множествам строк?  [new]
Glory
Member

Откуда:
Сообщений: 104751
AxOn
Вопрос как вывести один SELECT c пятью строками в нем?

Создать таблицу. Занести в нее данные. А потом уже выбирать данные из таблицы
1 июн 15, 12:36    [17714863]     Ответить | Цитировать Сообщить модератору
 Re: WHILE + один SELECT с множествам строк?  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4478
DECLARE @u varchar(MAX)
SET @u = '+stringa+';
DECLARE @y int
SET @y = 0

WHILE @y < 5
	BEGIN     
	
	SELECT @u
	SET @y = @y + 1  
	END   


Может таки
SET @y = @y + 1  
SET @u = @u + cast(@y as varchar(max))   

А то как-то нелогично.
1 июн 15, 12:44    [17714899]     Ответить | Цитировать Сообщить модератору
 Re: WHILE + один SELECT с множествам строк?  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1837
AxOn
Здравствуйте,
у меня лузерский вопрос, запроса типа:
DECLARE @u varchar(MAX)
SET @u = '+stringa+';
DECLARE @y int
SET @y = 0

WHILE @y < 5
	BEGIN     
	
	SELECT @u
	SET @y = @y + 1  
	END   

Очевидно у меня выводится 5 SELECT запросов по одной строке на каждом
Вопрос как вывести один SELECT c пятью строками в нем?

Подскажите пожалста ребят :)


автору нужен случаем не такой результат:
DECLARE @u varchar(MAX)
SET @u = '+stringa+'
SELECT REPLICATE(@u, 5)

?
1 июн 15, 13:43    [17715249]     Ответить | Цитировать Сообщить модератору
 Re: WHILE + один SELECT с множествам строк?  [new]
AxOn
Member

Откуда:
Сообщений: 26
felix_ff,

Результат в одну строку:
1 +stringa++stringa++stringa++stringa++stringa+

Мне же необходимо в несколько:
1 +stringa+
2 +stringa+
3 +stringa+
4 +stringa+
5 +stringa+
1 июн 15, 15:20    [17715867]     Ответить | Цитировать Сообщить модератору
 Re: WHILE + один SELECT с множествам строк?  [new]
Glory
Member

Откуда:
Сообщений: 104751
AxOn
Мне же необходимо в несколько:

Необходимо где ?
Сервер не занимается отображением результатов запроса у клиента
1 июн 15, 15:23    [17715886]     Ответить | Цитировать Сообщить модератору
 Re: WHILE + один SELECT с множествам строк?  [new]
Кролик-зануда
Guest
AxOn,

select '+stringa+' from (values(1),(2),(3),(4),(5))r(r)


select top 5 '+stringa+' from master..spt_values


with a as(
select 1i,'+stringa+' s
union all
select i+1,'+stringa+'
  from a
 where i<5)
select s from a


+мало ли еще как можно поизвращаться.
только вот нафига оно вам?
1 июн 15, 15:42    [17716005]     Ответить | Цитировать Сообщить модератору
 Re: WHILE + один SELECT с множествам строк?  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
AxOn
felix_ff,

Результат в одну строку:
1 +stringa++stringa++stringa++stringa++stringa+

Мне же необходимо в несколько:
1 +stringa+
2 +stringa+
3 +stringa+
4 +stringa+
5 +stringa+


"у меня лузерский вопрос"

Вот!

declare @t table(looser varchar(1024))
DECLARE @u varchar(MAX)
SET @u = '+stringa+';
DECLARE @y int
SET @y = 0

WHILE @y < 5
	BEGIN     
	
	SELECT @u
	SET @y = @y + 1  
        insert into @t(looser) values(@u)
	END  

select * from @t
1 июн 15, 16:22    [17716268]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить