Ces paramètres sont disponibles dans system.settings et sont générés automatiquement à partir du source.
optimize_rewrite_aggregate_function_with_if
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.
Pris en charge uniquement avec l’analyseur (enable_analyzer = 1).
optimize_rewrite_array_exists_to_has
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
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
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
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
Réécrit les fonctions sumIf() et sum(if()) en countIf() lorsqu’elles sont logiquement équivalentes