Skip to main content
Эти настройки доступны в system.settings и автоматически сгенерированы на основе исходного кода.

analyzer_compatibility_allow_compound_identifiers_in_unflatten_nested

Разрешает добавлять составные идентификаторы в Nested. Это настройка совместимости, поскольку она меняет результат запроса. Когда она отключена, SELECT a.b.c FROM table ARRAY JOIN a не работает, а SELECT a FROM table не включает столбец a.b.c в результат Nested a.

analyzer_compatibility_allow_non_aggregate_in_having

Если параметр включен, анализатор имитирует прежнее поведение, при котором неагрегатные AND-конъюнкты переносятся из HAVING в предложение WHERE вместо выдачи NOT_AN_AGGREGATE. Отклонение в соответствии со стандартом используется по умолчанию; эта настройка помогает при миграции запросов, которые старый анализатор (enable_analyzer = 0) молча принимал. Конъюнкты, содержащие агрегатные функции, grouping или недетерминированные функции, остаются в HAVING. Если хотя бы один конъюнкт содержит window function или функцию с сохранением состояния (например, rowNumberInBlock), преобразование отключается для всего HAVING, что соответствует прежнему поведению PredicateExpressionsOptimizer. Эта настройка также игнорируется, если в GROUP BY используются WITH CUBE, WITH ROLLUP, WITH TOTALS или GROUPING SETS.

analyzer_compatibility_join_using_top_level_identifier

Принудительно разрешать идентификатор в JOIN USING по проекции (например, в SELECT a + 1 AS b FROM t1 JOIN t2 USING (b) JOIN будет выполняться по условию t1.a + 1 = t2.b, а не t1.b = t2.b).

analyzer_compatibility_prefer_alias_over_subcolumn

Если составной идентификатор, такой как b.id, может ссылаться либо на столбец id таблицы с псевдонимом b, либо на подстолбец b.id типа Tuple другого столбца, будет выбрана интерпретация с префиксом-псевдонимом (столбец id таблицы b). По умолчанию анализатор предпочитает подстолбец. Включите эту настройку, чтобы использовать правила разрешения имен старого анализатора.
Последнее изменение 23 июля 2026 г.