У меня есть 4 миллиона записей в одной из моих таблиц. Мне нужно получить последние 25 записей, которые были добавлены за последнюю неделю.SQL Server последние 25 запросов оптимизации запросов
Это как мой текущий запрос выглядит
SELECT TOP(25) [t].[EId],
[t].[DateCreated],
[t].[Message]
FROM [dbo].[tblEvent] AS [t]
WHERE ([t].[DateCreated] >= Dateadd(DAY, Datediff(DAY, 0, Getdate()) - 7, 0)
AND [t].[EId] = 1)
ORDER BY [t].[DateCreated] DESC
Теперь у меня нет никаких индексов, работающих по этой таблице и не намерены иметь один. Этот запрос занимает около 10-15 секунд для запуска, а время ожидания моих приложений теперь есть способ улучшить его?
Почему вам не нужен указатель на столе? –
Ну, это клиентский звонок, и они не хотят индексов, я больше не спорю с ними об этом! – Vivek
THEN сказать им жить с ним или получить более быструю дисковую подсистему. Точка. Когда клиенты сталкиваются с реальностью, реальность выигрывает и не заботится о бредовых клиентах. Существует не так много оптимизаций, которые вы можете сделать на уровне Sql, не избавляясь от IO сканируемой таблицы, которую вы принудительно выполняете. – TomTom