Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

настройки сеанса optimize_rewrite_*

Эти настройки доступны в system.settings и автоматически генерируются на основе исходного файла.

optimize_rewrite_aggregate_function_with_if

Тип
Bool
По умолчанию
1

Переписывает агрегатные функции, у которых аргументом является выражение if, если они логически эквивалентны. Например, avg(if(cond, col, null)) можно переписать в avgOrNullIf(cond, col). Это может повысить производительность.

optimize_rewrite_array_exists_to_has

Тип
Bool
По умолчанию
1
История версий
ВерсияЗначение по умолчаниюКомментарий
26.41По умолчанию включена оптимизация переписывания arrayExists в has, так как перед переписыванием теперь проверяется совместимость типов.

Переписывать функции arrayExists() в has(), когда они логически эквивалентны. Например, arrayExists(x -> x = 1, arr) можно переписать в has(arr, 1)

optimize_rewrite_has_to_in

Тип
Bool
По умолчанию
1
История версий
ВерсияЗначение по умолчаниюКомментарий
26.61новая настройка

Переписывает функции has в IN, если первый аргумент — константный массив. Например, has([1, 2, 3], x) можно переписать как x IN [1, 2, 3] для повышения производительности при использовании константных массивов

optimize_rewrite_like_perfect_affix

Тип
Bool
По умолчанию
1
История версий
ВерсияЗначение по умолчаниюКомментарий
25.101новая настройка

Переписывает выражения LIKE с точным префиксом или суффиксом (например, col LIKE 'ClickHouse%') в вызовы функций startsWith или endsWith (например, startsWith(col, 'ClickHouse')).

optimize_rewrite_regexp_functions

Тип
Bool
По умолчанию
1
История версий
ВерсияЗначение по умолчаниюКомментарий
25.81Новая настройка

Переписывает функции, связанные с регулярными выражениями, в более простые и эффективные формы

optimize_rewrite_sum_if_to_count_if

Тип
Bool
По умолчанию
1
История версий
ВерсияЗначение по умолчаниюКомментарий
24.41Доступно только для анализатора, в котором это работает корректно

Переписывает функции sumIf() и sum(if()) в функцию countIf(), когда они логически эквивалентны

Navigation