Существуют оптимизаторы баз данных, которые можно включать или подключать к базам данных, чтобы предлагать (а в некоторых случаях выполнять) индексы, которые могут помочь.
Однако на самом деле это не тривиальная проблема, и когда эти средства впервые появились, пользователи иногда находили, что это на самом деле замедляет работу их баз данных из-за плохой оптимизации.
Наконец, в отрасли много денег для архитекторов баз данных, и они предпочитают статус-кво.
Тем не менее базы данных становятся все более интеллектуальными. Если вы используете профилировщик SQL-сервера с Microsoft SQL-сервером, вы найдете способы ускорить работу вашего сервера. Другие базы данных имеют аналогичные профилировщики, и для выполнения этой работы существуют сторонние утилиты.
Но если вы пишете запросы, надеюсь, вы знаете достаточно о том, что делаете, чтобы проиндексировать нужные поля. Если нет, то правильные индексы - это, вероятно, наименьшая из ваших проблем ...
-Adam