Есть такой скрипт с запросом и есть план по этому запросу в аттаче.
В данном плане сортировка занимает 24%. Как ее можно убрать?
Запрос упрощен по сравнению с рабочим, но сделан по аналогии. В рабочем запросе сортировка занимает 40%.
CREATE CLUSTERED INDEX [IX_Sales] ON [dbo].[Sales]
(
[SaleDate] ASC,
[Store] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
CREATE UNIQUE CLUSTERED INDEX [IX_Stores] ON [dbo].[Stores]
(
[Store] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
create table #tmpArticuls2
(
articul varchar(50) collate SQL_Latin1_General_CP1_CI_AS
)
select a.*, c.StoreName
from sales a
join #tmpArticuls2 b
on a.articul = b.articul
join Stores c
on a.store = c.store