Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

paramètres de session optimize_rewrite_*

Ces paramètres sont disponibles dans system.settings et sont générés automatiquement à partir du source.

optimize_rewrite_aggregate_function_with_if

Type
Bool
Par défaut
1

Réécrit les fonctions d’agrégation dont l’argument est une expression if, lorsqu’elles sont logiquement équivalentes. Par exemple, avg(if(cond, col, null)) peut être réécrit en avgOrNullIf(cond, col). Cela peut améliorer les performances.

optimize_rewrite_array_exists_to_has

Type
Bool
Par défaut
1
Historique des versions
VersionValeur par défautCommentaire
26.41Active par défaut l’optimisation de réécriture de arrayExists vers has, maintenant que la compatibilité des types est vérifiée avant la réécriture.

Réécrit les fonctions arrayExists() en has() lorsqu’elles sont logiquement équivalentes. Par exemple, arrayExists(x -> x = 1, arr) peut être réécrit en has(arr, 1)

optimize_rewrite_has_to_in

Type
Bool
Par défaut
1
Historique des versions
VersionValeur par défautCommentaire
26.61Nouveau paramètre

Réécrit les fonctions has en IN lorsque le premier argument est un tableau constant. Par exemple, has([1, 2, 3], x) peut être réécrit en x IN [1, 2, 3] afin d'améliorer les performances avec des tableaux constants

optimize_rewrite_like_perfect_affix

Type
Bool
Par défaut
1
Historique des versions
VersionValeur par défautCommentaire
25.101Nouveau paramètre

Réécrit les expressions LIKE avec un préfixe ou un suffixe exact (par ex. col LIKE 'ClickHouse%') en fonctions startsWith ou endsWith (par ex. startsWith(col, 'ClickHouse')).

optimize_rewrite_regexp_functions

Type
Bool
Par défaut
1
Historique des versions
VersionValeur par défautCommentaire
25.81Nouveau paramètre

Réécrit les fonctions liées aux expressions régulières sous une forme plus simple et plus efficace

optimize_rewrite_sum_if_to_count_if

Type
Bool
Par défaut
1
Historique des versions
VersionValeur par défautCommentaire
24.41Disponible uniquement pour l’analyseur, où il fonctionne correctement

Réécrit les fonctions sumIf() et sum(if()) en countIf() lorsqu’elles sont logiquement équivalentes

Navigation