Двадцать пять заповедей SQL - Используйте ORDER BE для индексного сканирования
ОГЛАВЛЕНИЕ
Страница 14 из 26
13. Используйте ORDER BE для индексного сканирования.
Оптимизатор Oracle будет использовать индексное сканирование, если запрос содержит раздел ORDER BY с указанием индексированного столбца. Для выполнения следующего запроса будет использован индекс на столбце EMPID, даже если этот столбец не используется в условиях раздела WHERE. Для каждой строки из индекса будет извлекаться ROWID, а потом с использованием ROWID будет производиться обращение к строке.
SELECT SALARY
FROM EMP
ORDER BY EMPID;
Если запрос будет плохо выполняться, можно попробовать переписать его с использованием указания FULL (см. 12-ую заповедь).