SET OPTIMIZE
Изменение стратегии оптимизатора.
DSQL
SET OPTIMIZE <optimize-mode>
<optimize-mode> ::=
FOR {FIRST | ALL} ROWS
| TO DEFAULT
Оператор SET OPTIMIZE позволяет изменить стратегию оптимизатора на уровне текущей сессии.
Существует две стратегии оптимизации запросов:
-
FIRST ROWS- оптимизатор строит план запроса так, чтобы наиболее быстро извлечь только первые строки запроса; -
ALL ROWS- оптимизатор строит план запроса так, чтобы наиболее быстро извлечь все строки запроса.
По умолчанию используется стратегия оптимизации указанная в параметре OptimizeForFirstRows конфигурационного файлаfirebird.conf или database.conf. OptimizeForFirstRows = false соответствует стратегии ALL ROWS,OptimizeForFirstRows = true соответствует стратегии FIRST ROWS.
Стратегия оптимизации может быть переопределена на уровне SQL оператора с помощью предложения OPTIMIZE FOR.