ClickHouse/docs/ru/sql-reference/statements/select/union-all.md
Roman Bug 9ec78855cd
DOCSUP-2806: Add meta header in RU (#15801)
* DOCSUP-2806: Add meta intro.

* DOCSUP-2806: Update meta intro.

* DOCSUP-2806: Fix meta.

* DOCSUP-2806: Add quotes for meta headers.

* DOCSUP-2806: Remove quotes from meta headers.

* DOCSUP-2806: Add meta headers.

* DOCSUP-2806: Fix quotes in meta headers.

* DOCSUP-2806: Update meta headers.

* DOCSUP-2806: Fix link to nowhere in EN.

* DOCSUP-2806: Fix link (settings to tune)

* DOCSUP-2806: Fix links.

* DOCSUP-2806:Fix links EN

* DOCSUP-2806: Fix build errors.

* DOCSUP-2806: Fix meta intro.

* DOCSUP-2806: Fix toc_priority in examples datasets TOC.

* DOCSUP-2806: Fix items order in toc.

* DOCSUP-2806: Fix order in toc.

* DOCSUP-2806: Fix toc order.

* DOCSUP-2806: Fix order in toc.

* DOCSUP-2806: Fix toc index in create

* DOCSUP-2806: Fix toc order in create.

Co-authored-by: romanzhukov <romanzhukov@yandex-team.ru>
Co-authored-by: alexey-milovidov <milovidov@yandex-team.ru>
2020-10-26 13:29:30 +03:00

2.3 KiB
Raw Blame History

toc_title
UNION ALL

Секция UNION ALL

Вы можете использовать UNION ALL чтобы объединить любое количество SELECT запросы путем расширения их результатов. Пример:

SELECT CounterID, 1 AS table, toInt64(count()) AS c
    FROM test.hits
    GROUP BY CounterID

UNION ALL

SELECT CounterID, 2 AS table, sum(Sign) AS c
    FROM test.visits
    GROUP BY CounterID
    HAVING c > 0

Результирующие столбцы сопоставляются по их индексу (порядку внутри SELECT). Если имена столбцов не совпадают, то имена для конечного результата берутся из первого запроса.

При объединении выполняет приведение типов. Например, если два запроса имеют одно и то же поле с не-Nullable и Nullable совместимыми типами, полученные в результате UNION ALL данные будут иметь Nullable тип.

Запросы, которые являются частью UNION ALL не могут быть заключен в круглые скобки. ORDER BY и LIMIT применяются к отдельным запросам, а не к конечному результату. Если вам нужно применить преобразование к конечному результату, вы можете разместить все объединенные с помощью UNION ALL запросы в подзапрос в секции FROM.

Ограничения

Поддерживается только UNION ALL. Обычный UNION (UNION DISTINCT) не поддерживается. Если вам это нужно UNION DISTINCT, вы можете написать SELECT DISTINCT из подзапроса, содержащего UNION ALL.

Детали реализации

Запросы, которые являются частью UNION ALL выполняются параллельно, и их результаты могут быть смешаны вместе.