mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-22 23:52:03 +00:00
join_algorithm setting
This commit is contained in:
parent
57f7861e59
commit
a2fb64c108
@ -509,6 +509,19 @@ Possible values:
|
|||||||
|
|
||||||
Default value: `ALL`.
|
Default value: `ALL`.
|
||||||
|
|
||||||
|
## join_algorithm {#settings-join_algorithm}
|
||||||
|
|
||||||
|
Specifies [JOIN](../../sql-reference/statements/select/join.md) algorithm.
|
||||||
|
|
||||||
|
Possible values:
|
||||||
|
|
||||||
|
- 'hash'
|
||||||
|
- 'partial_merge'
|
||||||
|
- 'prefer_partial_merge'
|
||||||
|
- 'auto' — tries to change `hash` join to `merge` join on the fly to avoid out of memory.
|
||||||
|
|
||||||
|
Default value: `hash`.
|
||||||
|
|
||||||
## join_any_take_last_row {#settings-join_any_take_last_row}
|
## join_any_take_last_row {#settings-join_any_take_last_row}
|
||||||
|
|
||||||
Changes behaviour of join operations with `ANY` strictness.
|
Changes behaviour of join operations with `ANY` strictness.
|
||||||
|
@ -36,12 +36,21 @@ Additional join types available in ClickHouse:
|
|||||||
- `LEFT ANY JOIN`, `RIGHT ANY JOIN` and `INNER ANY JOIN`, partially (for opposite side of `LEFT` and `RIGHT`) or completely (for `INNER` and `FULL`) disables the cartesian product for standard `JOIN` types.
|
- `LEFT ANY JOIN`, `RIGHT ANY JOIN` and `INNER ANY JOIN`, partially (for opposite side of `LEFT` and `RIGHT`) or completely (for `INNER` and `FULL`) disables the cartesian product for standard `JOIN` types.
|
||||||
- `ASOF JOIN` and `LEFT ASOF JOIN`, joining sequences with a non-exact match. `ASOF JOIN` usage is described below.
|
- `ASOF JOIN` and `LEFT ASOF JOIN`, joining sequences with a non-exact match. `ASOF JOIN` usage is described below.
|
||||||
|
|
||||||
## Setting {#join-settings}
|
## Settings {#join-settings}
|
||||||
|
|
||||||
!!! note "Note"
|
The default join type can be overriden using [join_default_strictness](../../../operations/settings/settings.md#settings-join_default_strictness) setting.
|
||||||
The default join type can be overriden using [join_default_strictness](../../../operations/settings/settings.md#settings-join_default_strictness) setting.
|
|
||||||
|
|
||||||
Also the behavior of ClickHouse server for `ANY JOIN` operations depends on the [any_join_distinct_right_table_keys](../../../operations/settings/settings.md#any_join_distinct_right_table_keys) setting.
|
The behavior of ClickHouse server for `ANY JOIN` operations depends on the [any_join_distinct_right_table_keys](../../../operations/settings/settings.md#any_join_distinct_right_table_keys) setting.
|
||||||
|
|
||||||
|
**See also**
|
||||||
|
|
||||||
|
- [join_algorithm](../../../operations/settings/settings.md#settings-join_algorithm)
|
||||||
|
- [join_any_take_last_row](../../../operations/settings/settings.md#settings-join_any_take_last_row)
|
||||||
|
- [join_use_nulls](../../../operations/settings/settings.md#join_use_nulls)
|
||||||
|
- [partial_merge_join_optimizations](../../../operations/settings/settings.md#partial_merge_join_optimizations)
|
||||||
|
- [partial_merge_join_rows_in_right_blocks](../../../operations/settings/settings.md#partial_merge_join_rows_in_right_blocks)
|
||||||
|
- [join_on_disk_max_files_to_merge](../../../operations/settings/settings.md#join_on_disk_max_files_to_merge)
|
||||||
|
- [any_join_distinct_right_table_keys](../../../operations/settings/settings.md#any_join_distinct_right_table_keys)
|
||||||
|
|
||||||
### ASOF JOIN Usage {#asof-join-usage}
|
### ASOF JOIN Usage {#asof-join-usage}
|
||||||
|
|
||||||
|
@ -490,6 +490,19 @@ ClickHouse может парсить только базовый формат `Y
|
|||||||
|
|
||||||
Значение по умолчанию: `ALL`.
|
Значение по умолчанию: `ALL`.
|
||||||
|
|
||||||
|
## join_algorithm {#settings-join_algorithm}
|
||||||
|
|
||||||
|
Определяет алгоритм выполнения запроса [JOIN](../../sql-reference/statements/select/join.md).
|
||||||
|
|
||||||
|
Возможные значения:
|
||||||
|
|
||||||
|
- 'hash'
|
||||||
|
- 'partial_merge'
|
||||||
|
- 'prefer_partial_merge'
|
||||||
|
- 'auto' — сервер пытается на лету заменить алгоритм `hash` на `merge` чтобы избежать переполнения памяти.
|
||||||
|
|
||||||
|
Значение по умолчанию: `hash`.
|
||||||
|
|
||||||
## join_any_take_last_row {#settings-join_any_take_last_row}
|
## join_any_take_last_row {#settings-join_any_take_last_row}
|
||||||
|
|
||||||
Изменяет поведение операций, выполняемых со строгостью `ANY`.
|
Изменяет поведение операций, выполняемых со строгостью `ANY`.
|
||||||
|
@ -38,11 +38,20 @@ FROM <left_table>
|
|||||||
|
|
||||||
## Настройки {#join-settings}
|
## Настройки {#join-settings}
|
||||||
|
|
||||||
!!! note "Примечание"
|
Значение строгости по умолчанию может быть переопределено с помощью настройки [join_default_strictness](../../../operations/settings/settings.md#settings-join_default_strictness).
|
||||||
Значение строгости по умолчанию может быть переопределено с помощью настройки [join_default_strictness](../../../operations/settings/settings.md#settings-join_default_strictness).
|
|
||||||
|
|
||||||
Поведение сервера ClickHouse для операций `ANY JOIN` зависит от параметра [any_join_distinct_right_table_keys](../../../operations/settings/settings.md#any_join_distinct_right_table_keys).
|
Поведение сервера ClickHouse для операций `ANY JOIN` зависит от параметра [any_join_distinct_right_table_keys](../../../operations/settings/settings.md#any_join_distinct_right_table_keys).
|
||||||
|
|
||||||
|
**См. также**
|
||||||
|
|
||||||
|
- [join_algorithm](../../../operations/settings/settings.md#settings-join_algorithm)
|
||||||
|
- [join_any_take_last_row](../../../operations/settings/settings.md#settings-join_any_take_last_row)
|
||||||
|
- [join_use_nulls](../../../operations/settings/settings.md#join_use_nulls)
|
||||||
|
- [partial_merge_join_optimizations](../../../operations/settings/settings.md#partial_merge_join_optimizations)
|
||||||
|
- [partial_merge_join_rows_in_right_blocks](../../../operations/settings/settings.md#partial_merge_join_rows_in_right_blocks)
|
||||||
|
- [join_on_disk_max_files_to_merge](../../../operations/settings/settings.md#join_on_disk_max_files_to_merge)
|
||||||
|
- [any_join_distinct_right_table_keys](../../../operations/settings/settings.md#any_join_distinct_right_table_keys)
|
||||||
|
|
||||||
### Использование ASOF JOIN {#asof-join-usage}
|
### Использование ASOF JOIN {#asof-join-usage}
|
||||||
|
|
||||||
`ASOF JOIN` применим в том случае, когда необходимо объединять записи, которые не имеют точного совпадения.
|
`ASOF JOIN` применим в том случае, когда необходимо объединять записи, которые не имеют точного совпадения.
|
||||||
|
Loading…
Reference in New Issue
Block a user