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

Откуда: Саратов
Сообщений: 1217
всем привет!
делаю не хитрый запрос из двух таблиц
типа
select * from t1 left join t2 on t2.field1 = t1.field1 

смотрю план запроса в нем вижу что сортировка стоит 40% от всего запроса, сортировка мне в этом запросе не нужна.

вопрос: как принудительно отказаться от сортировки ?
2 июл 12, 16:01    [12804993]     Ответить | Цитировать Сообщить модератору
 Re: Как отключить сортировку в запросе ?  [new]
Glory
Member

Откуда:
Сообщений: 104751
Mandarin
сортировка мне в этом запросе не нужна.

Вам может и не нужна, а серверу нужна
2 июл 12, 16:04    [12805027]     Ответить | Цитировать Сообщить модератору
 Re: Как отключить сортировку в запросе ?  [new]
Mandarin
Member

Откуда: Саратов
Сообщений: 1217
Glory,

обидно да ... когда сервер главнее чем админ этого сервера :)

так можно отключить или нет ? возможна она ему и нужно но хочется проверить на сколько быстрее или медленнее будет запрос без сортировки все таки 40% ... есть где экономить :)
2 июл 12, 16:07    [12805061]     Ответить | Цитировать Сообщить модератору
 Re: Как отключить сортировку в запросе ?  [new]
Владимир Затуливетер
Member

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

отключить нельзя, по крайней мере команды типа "with (noorder)" нет :)
не смотря на то, что сортировка в данном плане стоит 40% это не значит что план плохой и ее надо убрать. как уже сказали сортировка нужна для выполнения этого запроса серверу, так уж сервер план построил, и посчитал что он лучший.
2 июл 12, 16:08    [12805073]     Ответить | Цитировать Сообщить модератору
 Re: Как отключить сортировку в запросе ?  [new]
Мистер Хенки
Member

Откуда: канализация
Сообщений: 6615
Mandarin
Glory,

обидно да ... когда сервер главнее чем админ этого сервера :)

так можно отключить или нет ? возможна она ему и нужно но хочется проверить на сколько быстрее или медленнее будет запрос без сортировки все таки 40% ... есть где экономить :)

используй другие типы соединения option(hash join) option(loop join), или используй покрывающие индексы с нужной сортировкой для merge join
2 июл 12, 16:19    [12805195]     Ответить | Цитировать Сообщить модератору
 Re: Как отключить сортировку в запросе ?  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Отключить сортировку можно!
Другой сортировкой...
2 июл 12, 16:24    [12805250]     Ответить | Цитировать Сообщить модератору
 Re: Как отключить сортировку в запросе ?  [new]
Glory
Member

Откуда:
Сообщений: 104751
Mandarin
так можно отключить или нет ? возможна она ему и нужно но хочется проверить на сколько быстрее или медленнее будет запрос без сортировки все таки 40% ... есть где экономить :)

Переписать запрос. Вы почему то решили, что сортировка серверу нужна для прихоти, а не для выполнения вашего же джойна, например. Наверное вы просто плохо представляете, как вообще можно строить соединения таблиц.
2 июл 12, 16:31    [12805325]     Ответить | Цитировать Сообщить модератору
 Re: Как отключить сортировку в запросе ?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Мистер Хенки +1
Mandarin
смотрю план запроса в нем вижу что сортировка стоит 40% от всего запроса, сортировка мне в этом запросе не нужна
Да, да, а что такое индексы мы не знаем, но главное читаем планы мы по своему.
Mandarin, но главное что вы туда хоть смотрите, и это намного важнее.
2 июл 12, 20:52    [12806503]     Ответить | Цитировать Сообщить модератору
 Re: Как отключить сортировку в запросе ?  [new]
GloryV
Member

Откуда:
Сообщений: 33
Mandarin
смотрю план запроса в нем вижу что сортировка стоит 40% от всего запроса, сортировка мне в этом запросе не нужна

Советую глянуть
http://msdn.microsoft.com/en-us/library/ms173815.aspx
3 июл 12, 07:32    [12807443]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить