powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Группа локальных серверов
25 сообщений из 43, страница 1 из 2
Группа локальных серверов
    #39736651
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
Добрый день!

Есть группа локальных серверов, делаю SELECT по всем серверам...как отсортировать результат по наименованиям серверов?

Спасибо.
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736719
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
order by
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736727
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
Гавриленко Сергей Алексеевичorder by

Очень смешно! Меня само собой интересует параметр по которому ORDER BY...!
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736728
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r77Гавриленко Сергей Алексеевичorder by

Очень смешно! Меня само собой интересует параметр по которому ORDER BY...!
ORDER BY [наименованиям серверов]
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736730
uaggster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гавриленко Сергей Алексеевичorder by
))))

По сабжу:
Вроде бы никак не отсортировать. И уж точно - не директивой в запросе.
Т.к. такое представление - это самодеятельность SSMS.
Она открывает тучу коннектов к серверам, складирует результаты от каждого, а потом выводит с меткой сервера каждый отдельный резалтсет в одной таблице.
Этот резалтсет не настоящий. Его студия внутри себя создала. И сортировать его, соответственно, тоже она должна.
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736815
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
uaggsterГавриленко Сергей Алексеевичorder by
))))

По сабжу:
Вроде бы никак не отсортировать. И уж точно - не директивой в запросе.
Т.к. такое представление - это самодеятельность SSMS.
Она открывает тучу коннектов к серверам, складирует результаты от каждого, а потом выводит с меткой сервера каждый отдельный резалтсет в одной таблице.
Этот резалтсет не настоящий. Его студия внутри себя создала. И сортировать его, соответственно, тоже она должна.

возвращается список каждый раз хаотично,не очень удобно, спасибо за ответ, так и думала.
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736844
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r77,

самое смешное, что имя сервера отображается в первой колонке. Вы какую версию SSMS используете? Установите последнюю, если сервер выше 2012.
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736904
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
Владислав Колосовr77,

самое смешное, что имя сервера отображается в первой колонке.

ох..
мне и нужно отсортировать записи по алфавиту по результатам запроса из первой колонки...название этой колонки [имя сервера]!

Вы какую версию SSMS используете? Установите последнюю, если сервер выше 2012.

2008, спасибо, другую версию я не могу установить и использовать
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736911
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r77Владислав Колосовr77,

самое смешное, что имя сервера отображается в первой колонке.

ох..
мне и нужно отсортировать записи по алфавиту по результатам запроса из первой колонки...название этой колонки [имя сервера]!

Вы какую версию SSMS используете? Установите последнюю, если сервер выше 2012.

2008, спасибо, другую версию я не могу установить и использовать

можно противоестественным способом - делать проверку на имя сервера и делать нужную паузу
полагаю, что студия выводит результат для группы серверов в порядке получения результата от серверов

например так

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
declare @delay varchar(10) ;
with servers as 
(select 'server1' [name], '05' [seconds] union all 
select 'server2' [name], '10' [seconds] union all 
select 'server3' [name], '15' [seconds] union all 
select 'server4' [name], '20' [seconds] union all 
select 'server5' [name], '25' [seconds] union all 
select 'server6' [name], '30' [seconds] union all 
select 'server7' [name], '35' [seconds] union all 
select 'server8' [name], '40' [seconds] union all 
select 'server9' [name], '45' [seconds] union all 
select 'server10' [name], '50' [seconds] 
)

select @delay = '00:00:'+name 
from servers 
where name=@@servername 

select @delay=isnull(@delay,'00:00:00')

waitfor delay @delay 

/*your query*/
select ..... 



...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736913
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
опечатка в скрипте :
вместо
Код: plaintext
select @delay = '00:00:'+name 
должно быть
Код: plaintext
select @delay = '00:00:'+seconds
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39736946
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
komradопечатка в скрипте :
вместо
Код: plaintext
select @delay = '00:00:'+name 
должно быть
Код: plaintext
select @delay = '00:00:'+seconds


благодарю,попробую
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39738079
DaniilSeryi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r77Добрый день!

Есть группа локальных серверов, делаю SELECT по всем серверам...как отсортировать результат по наименованиям серверов?

Спасибо.
А добавить в каждый select столбец с именем сервера, к которому сделан запрос, нельзя?
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39738253
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DaniilSeryir77Добрый день!

Есть группа локальных серверов, делаю SELECT по всем серверам...как отсортировать результат по наименованиям серверов?

Спасибо.
А добавить в каждый select столбец с именем сервера, к которому сделан запрос, нельзя?

результирующая выборка группового запроса и так содержит сервер (столбец ноль), на котором был выполнен запрос

у автора хотелка, чтобы общая выборка была отсортирована по имени сервера
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39738278
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r77Добрый день!

Есть группа локальных серверов, делаю SELECT по всем серверам...как отсортировать результат по наименованиям серверов?

Спасибо.Если СЕЛЕКТ делаете именно Вы (а не сторонняя утилита), помещайте результат в врем. таблицу и потом сортируйте.
Ну или помещайте в Эксель и сортируйте. :)
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39738296
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
komradDaniilSeryiпропущено...

А добавить в каждый select столбец с именем сервера, к которому сделан запрос, нельзя?

результирующая выборка группового запроса и так содержит сервер (столбец ноль), на котором был выполнен запрос

у автора хотелка, чтобы общая выборка была отсортирована по имени сервераЕсли есть поле имя, и нужно по нему отсортировать, то врорым постом дали верный ответ.
Но автор намёками и пожиманием плеч показывает, что это ему не подходит.
Может, нужно сформулировать вопрос поближе к рекомендациям оформления сообщений, то есть привести запрос, текущий результат, и желаемый результат? Или описать задачу подробнее, если это, например поведение какого то стороннего софта, в котором "ничего нельзя менять"?
L_argoЕсли СЕЛЕКТ делаете именно Вы (а не сторонняя утилита), помещайте результат в врем. таблицу и потом сортируйте.А почему бы не отсортиролвать сразу???
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739058
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
alexeyvgkomradпропущено...


результирующая выборка группового запроса и так содержит сервер (столбец ноль), на котором был выполнен запрос

у автора хотелка, чтобы общая выборка была отсортирована по имени сервераЕсли есть поле имя, и нужно по нему отсортировать, то врорым постом дали верный ответ.
Но автор намёками и пожиманием плеч показывает, что это ему не подходит.
Может, нужно сформулировать вопрос поближе к рекомендациям оформления сообщений, то есть привести запрос, текущий результат, и желаемый результат? Или описать задачу подробнее, если это, например поведение какого то стороннего софта, в котором "ничего нельзя менять"?
L_argoЕсли СЕЛЕКТ делаете именно Вы (а не сторонняя утилита), помещайте результат в врем. таблицу и потом сортируйте.А почему бы не отсортиролвать сразу???

Никакой не сторонний софт, студия SQL...я и спрашиваю как отсортировать сразу в результатах запроса...ни в excel, ни еще где-то...естественно можно загрузить в временную таблицу и в excel и еще куда-нибудь - это дополнительные действия, которых хочется избежать. Описать задачу подробнее - либо не делали никогда запрос по группе серверов,поэтому и спрашиваете подробнее...

подробнее....
выбираю из контекстного меню группы локальных серверов -> "создать запрос"
Код: sql
1.
select * from [БД].[dbo].[таблица] 


в результате возвращается в первом столбце имя сервера и далее все поля из запроса, как отсортировать по алфавиту имена серверов (по первому столбцу в котором написано имя сервера), называется столбец "Имя сервера"?

ORDER BY [имя сервера] = ошибка
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739101
Eleanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
komrad,

Спасибо, ваш вариант с waitfor работает.
Мне даже подошла сортировка по первой букве, для визуального удобства чтения результатов.
Код: sql
1.
2.
3.
declare @delay varchar(10) = '00:00:0' + CAST((ASCII(UPPER(substring(@@servername, 1, 1))) - 65)/10.0 AS varchar(10))
waitfor delay @delay
select sum(size/1024)*8/1024 GB from sys.master_files
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739167
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r77выбираю из контекстного меню группы локальных серверов -> "создать запрос"А, вот оно что, то есть вопрос, не как заставить сервер отсортировать результат запроса, а как заставить клиентское приложение заставить отсортировать результаты запросов, притом что в нём сортировка не предусмотрена.
Я просто сразу не понял, что речь про "Multiple Server Query", как они в доке называются.
Микрософт говорит, что нельзя :-(
Multiple Server Query Execution ordering

Хак от komrad у меня не сработал, Microsoft SQL Server Management Studio 13.0.16106.4 :-(
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739178
Eleanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg,

На 14.0.17285.0 работает.
Единственное неудобство - задержка waitfor должна быть заведомо больше, чем возможные сетевые задержки.
Мне пришлось delay между серверами делать ~100 мс. Т.е. если запрос к 50 серверам, то общее время ожидания уже не меньше 5 сек.
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739208
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
alexeyvgr77выбираю из контекстного меню группы локальных серверов -> "создать запрос"А, вот оно что, то есть вопрос, не как заставить сервер отсортировать результат запроса, а как заставить клиентское приложение заставить отсортировать результаты запросов, притом что в нём сортировка не предусмотрена.
Я просто сразу не понял, что речь про "Multiple Server Query", как они в доке называются.
Микрософт говорит, что нельзя :-(
Multiple Server Query Execution ordering

Хак от komrad у меня не сработал, Microsoft SQL Server Management Studio 13.0.16106.4 :-(

Microsoft SQL Server Management Studio 10.50.1600.1, само собой у меня тоже не сработал (

ясно что никак, спасибо всем за ответы
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739217
Eleanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r77,

Можно скачать и установить последнюю версию SSMS , где всё работает.
Старые версии Sql Server 2008 он воспринимает нормально. Если только у вас нет каких-то аддонов для старого ssms.
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739221
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eleanorkomrad,

Спасибо, ваш вариант с waitfor работает.
Мне даже подошла сортировка по первой букве, для визуального удобства чтения результатов.
Код: sql
1.
2.
3.
declare @delay varchar(10) = '00:00:0' + CAST((ASCII(UPPER(substring(@@servername, 1, 1))) - 65)/10.0 AS varchar(10))
waitfor delay @delay
select sum(size/1024)*8/1024 GB from sys.master_files


спасибо за пруф

интересно что, в случае если все сервера начинаются с одного префикса, то вычисление задержки по первому символу не приносит желаемого результата

кстати,
Код: plaintext
select sum(size/1024)*8/1024 GB from sys.master_files
можно переписать в более лаконичное
Код: plaintext
select sum(size/128)/1024 GB from sys.master_files
где size/128 это перевод в МБ
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739222
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r77Microsoft SQL Server Management Studio 10.50.1600.1, само собой у меня тоже не сработал (


а что именно не сработало?
есть текст ошибки?
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739228
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
komradr77Microsoft SQL Server Management Studio 10.50.1600.1, само собой у меня тоже не сработал (


а что именно не сработало?
есть текст ошибки?

на локальную переменную ругается...

Код: sql
1.
2.
Невозможно присвоить значение по умолчанию локальной переменной.
Необходимо объявить скалярную переменную "@delay".



но не на всех серверах...только на тех у кого 2005, 2008-работает
...
Рейтинг: 0 / 0
Группа локальных серверов
    #39739236
r77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
r77
Гость
komradr77Microsoft SQL Server Management Studio 10.50.1600.1, само собой у меня тоже не сработал (


а что именно не сработало?
есть текст ошибки?

надо
Код: sql
1.
set @delay= '00:00:0' + CAST((ASCII(UPPER(substring(@@servername, 1, 1))) - 65)/10.0 AS varchar(10))



в 2005 надо было через set
...
Рейтинг: 0 / 0
25 сообщений из 43, страница 1 из 2
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Группа локальных серверов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]