Вы, наверное, уже заметили, какую полезную
информацию об индексах и о статистике использования существующих и, как это не
удивительно,
не существующих индексов можно
получить в
SQL Server из
системных динамических административных представлений. Особенно впечатляет эта
информация, когда её видишь в виде пользовательского отчёта
приборной панели производительности SQL
Server, которую в качестве бесплатного дополнения к
SQL Server Management Studio предлагает использовать Майкрософт.
Ниже представлен сценарий, который позволяет получить рекомендации по индексам,
которых в обозримом прошлом недоставало базе данных, в контексте которой этот
сценарий исполняется. Учтите, что сценарий в целях наглядности был упрощён,
поэтому результирующие команды по созданию индексов, наверняка, будут содержать
ошибки, т.к. тут не учитывается возможность отсутствия не относящихся к
предикатам эквивалентности колонок, а также колонок, которые в индексе будут
присоединёнными. Впрочем, эти ошибки легко устранимы, просто поищите лишние
запятые перед запуском сценария, а также не забудьте удалить пустые инструкции
INCLUDE.