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

declare @s varchar(1000)
set @s = ''

select @s = @s + syscolumns.name + ', '
from sysobjects inner join syscolumns on sysobjects.id=syscolumns.id
where sysobjects.name='test_table'

set @s=left(@s,len(@s)-1)

Если добавит в него строчку

order by colorder

то в @s будет только название последней колонки. Почему?

Можно ли склеить записи в одну строку как-нибудь по другому, но без курсора?
10 июн 05, 17:13    [1614483]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
У меня и исходный запрос, и запрос с order by выводят все правильно.

Приведите скрипт вашей таблицы 'test_table' и версию сервера.
10 июн 05, 17:26    [1614542]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
M0us
Member

Откуда: Moscow
Сообщений: 883
попробуйте...
where sysobjects.name LIKE '%test_table%'
10 июн 05, 17:29    [1614562]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
VladRUS.ca
Member

Откуда: Toronto
Сообщений: 1172
У меня тоже всё работает правельно с order by colorder
10 июн 05, 17:31    [1614567]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
1
Guest
Забавно, оказывается на сервере этот запрос работает. А на локальном SQL, на моей машине возвращает только название последней колонки.

PS Везде стоит SQL2K, только у меня Personal Edition.
14 июн 05, 12:52    [1618812]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
select @@version
на обоих серверах
14 июн 05, 14:29    [1619185]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
1
Guest
Здесь запрос работает
Microsoft SQL Server 2000 - 8.00.760 (Intel X86) Dec 17 2002 14:22:05 Copyright (c) 1988-2003 Microsoft Corporation Standard Edition on Windows NT 5.0 (Build 2195: Service Pack 4)


а здесь нет
Microsoft SQL Server 2000 - 8.00.194 (Intel X86) Aug 6 2000 00:57:48 Copyright (c) 1988-2000 Microsoft Corporation Desktop Engine on Windows NT 5.0 (Build 2195: Service Pack 4)
14 июн 05, 14:47    [1619266]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Ну вот вам и ответ. На второй сервак надо сервис-пак накатывать.
14 июн 05, 14:50    [1619282]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
1
Guest
И там, и там SP4.
Подскажите какая последняя версия SP.
14 июн 05, 14:57    [1619317]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
злой шаман
Member

Откуда: Питер
Сообщений: 1253
Еще советую сравнить default connection options в свойствах обоих серверов.
14 июн 05, 15:00    [1619345]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
1
И там, и там SP4.
Неправда. http://support.microsoft.com/default.aspx?scid=kb;en-us;321185&Product=sql
14 июн 05, 15:01    [1619352]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
1
И там, и там SP4.
Подскажите какая последняя версия SP.

Гы. Вы сильно ошибаетесь.
Первый сервак - SP3 или SP3a.
Второй - вообще нет сервис-паков.

NB: не путайте сервис-паки виндов и сиквела.
14 июн 05, 15:01    [1619356]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
HOW TO: identify your SQL Server Service Pack version and edition
14 июн 05, 15:03    [1619366]     Ответить | Цитировать Сообщить модератору
 Re: Объясните, что не так в запросе  [new]
1
Guest
GreenSunrise
NB: не путайте сервис-паки виндов и сиквела.


Точно, невнимательно читаю. Спасибо
14 июн 05, 15:08    [1619386]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить