powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Разный план выполнения
7 сообщений из 32, страница 2 из 2
Разный план выполнения
    #39868731
[quot alexeyvg]Соколов Валерийпропущено...

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

Все верно. Так собственно и происходит - они в конце таблицы.
Вопрос в том есть ли варианты ускорить выборку?
...
Рейтинг: 0 / 0
Разный план выполнения
    #39868752
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколов ВалерийВопрос в том есть ли варианты ускорить выборку?Варианты почти всегда есть.
Но без скриптов создания таблиц и индексов мало что можно предложить.
...
Рейтинг: 0 / 0
Разный план выполнения
    #39868760
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколов ВалерийalexeyvgА там уж как повезёт; если они в конце таблицы, то придётся просмотреть, и проверить на условия, все записи в таблице.

Все верно. Так собственно и происходит - они в конце таблицы.
Вопрос в том есть ли варианты ускорить выборку?А если добавить в индексы второе поле как INCLUDE?
То есть будет
([Из города]) INCLUDE ([В город])
([В город]) INCLUDE ([Из города])

PS А запросы откуда такие?
Какое то причудливое переплетение LEGT JOIN, RIGHT JOIN, и туда беспорядочно вкраплены условия...
Не делать алиаса у [новый транзит] вообще выглядит как издевательство, как будто в компанию заслали диверсанта.
...
Рейтинг: 0 / 0
Разный план выполнения
    #39868774
Gerros
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколов Валерий,

а попробуйте вот такую магию:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
select top 2000 [новый транзит].*
from dbo.[новый транзит] with( forceseek)
where [№ записи] in( select [№ записи] from dbo.[новый транзит] where [Из города] = 'Екатеринбург')
   or [№ записи] in( select [№ записи] from dbo.[новый транзит] where [В город] = 'Екатеринбург')
   or [№ записи] in(
select [№ записи]
from dbo.[новый транзит]
join dbo.контрагенты on [№_клиента] = [код плательщика]
where [Регион выст счетов] ='Екатеринбург')
...
Рейтинг: 0 / 0
Разный план выполнения
    #39870277
alexeyvgСоколов Валерийпропущено...


Все верно. Так собственно и происходит - они в конце таблицы.
Вопрос в том есть ли варианты ускорить выборку?А если добавить в индексы второе поле как INCLUDE?
То есть будет
([Из города]) INCLUDE ([В город])
([В город]) INCLUDE ([Из города])

PS А запросы откуда такие?
Какое то причудливое переплетение LEGT JOIN, RIGHT JOIN, и туда беспорядочно вкраплены условия...
Не делать алиаса у [новый транзит] вообще выглядит как издевательство, как будто в компанию заслали диверсанта.

INCLUDE не помогли
...
Рейтинг: 0 / 0
Разный план выполнения
    #39870278
GerrosСоколов Валерий,

а попробуйте вот такую магию:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
select top 2000 [новый транзит].*
from dbo.[новый транзит] with( forceseek)
where [№ записи] in( select [№ записи] from dbo.[новый транзит] where [Из города] = 'Екатеринбург')
   or [№ записи] in( select [№ записи] from dbo.[новый транзит] where [В город] = 'Екатеринбург')
   or [№ записи] in(
select [№ записи]
from dbo.[новый транзит]
join dbo.контрагенты on [№_клиента] = [код плательщика]
where [Регион выст счетов] ='Екатеринбург')



А вот это уже гораздо лучше!
Выборка стала работать в разы быстрее!
Спасибо за совет :)
...
Рейтинг: 0 / 0
Разный план выполнения
    #39870279
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколов ВалерийINCLUDE не помоглиИ не должны были.
В вашем запросе вообще индексы по dbo.[новый транзит] бесполезны - из-за Плательщик.[Регион выст счетов] ='Екатеринбург'

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


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