mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-26 01:22:04 +00:00
Fixes
This commit is contained in:
parent
a2e8e8ec0a
commit
0ea906baca
@ -382,7 +382,7 @@ See also:
|
||||
- [Join table engine](../table_engines/join.md)
|
||||
- [join_default_strictness](#settings-join_default_strictness)
|
||||
|
||||
## join_use_nulls {#settings-join_use_nulls}
|
||||
## join_use_nulls {#join_use_nulls}
|
||||
|
||||
Sets the type of [JOIN](../../query_language/select.md) behavior. When merging tables, empty cells may appear. ClickHouse fills them differently based on this setting.
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
Prepared data structure for using in [JOIN](../../query_language/select.md#select-join) operations.
|
||||
|
||||
## Creating a Table
|
||||
## Creating a Table {#creating-a-table}
|
||||
|
||||
```sql
|
||||
CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
|
||||
|
@ -863,9 +863,9 @@ So, result of function depends on partition of data to blocks and on order of da
|
||||
|
||||
## joinGet {#joinget}
|
||||
|
||||
The function lets you extract data from the table the same way as from a [dictionary](https://clickhouse.yandex/docs/en/query_language/dicts/).
|
||||
The function lets you extract data from the table the same way as from a [dictionary](../dicts/index.md).
|
||||
|
||||
Gets data from [Join](../../join/#creating-a-table) tables using the specified join key.
|
||||
Gets data from [Join](../../operations/table_engines/join.md#creating-a-table) tables using the specified join key.
|
||||
|
||||
Only supports tables created with the `ENGINE = Join(ANY, LEFT, <join_keys>)` statement.
|
||||
|
||||
@ -877,10 +877,9 @@ joinGet(join_storage_table_name, `value_column`, join_keys)
|
||||
|
||||
**Parameters**
|
||||
|
||||
- `join_storage_table_name` — [Identifier](../../syntax/#syntax-identifiers) indicates where search is performed. In most cases, this is the name of the database and/or table.
|
||||
Firstly, identifier is searched in the default database (see parameter `default_database` in the config), and then in other databases. To override the default database, use the `USE db_name` command.
|
||||
- Specify only the table name for tables with a unique name.
|
||||
- Specify the database and then the table for non-unique tables. Use a dot as the separator.
|
||||
- `join_storage_table_name` — [Identifier](../../syntax/#syntax-identifiers) indicates where search is performed. In most cases, this is the name of the database and/or table. Firstly, identifier is searched in the default database (see parameter `default_database` in the config file), and then in other databases. To override the default database, use the `USE db_name` command.
|
||||
- Specify only the table name for tables with a unique name.
|
||||
- Specify the database and then the table for non-unique tables. Use a dot as the separator.
|
||||
- `value_column` — name of the column of the table that contains required data.
|
||||
- `join_keys` — list of keys.
|
||||
|
||||
@ -888,16 +887,16 @@ Firstly, identifier is searched in the default database (see parameter `default_
|
||||
|
||||
Returns list of values corresponded to list of keys.
|
||||
|
||||
If certain doesn't exist in source table then `0` or `null` will be returned based on [join_use_nulls](../../settings/#settings-join_use_nulls) setting.
|
||||
|
||||
Type: [all Data Types](https://clickhouse.yandex/docs/en/data_types/).
|
||||
If certain doesn't exist in source table then `0` or `null` will be returned based on [join_use_nulls](../../operations/settings/settings.md#join_use_nulls) setting.
|
||||
|
||||
**Example**
|
||||
|
||||
Input table:
|
||||
|
||||
```sql
|
||||
CREATE TABLE id_val(`id` UInt32, `val` UInt32) ENGINE = Join(ANY, LEFT, id)
|
||||
INSERT INTO id_val VALUES (1,11)(2,12)(4,13)
|
||||
CREATE DATABASE db_test
|
||||
CREATE TABLE db_test.id_val(`id` UInt32, `val` UInt32) ENGINE = Join(ANY, LEFT, id)
|
||||
INSERT INTO db_test.id_val VALUES (1,11)(2,12)(4,13)
|
||||
```
|
||||
|
||||
```text
|
||||
@ -911,18 +910,18 @@ INSERT INTO id_val VALUES (1,11)(2,12)(4,13)
|
||||
Query:
|
||||
|
||||
```sql
|
||||
SELECT joinGet(dbtest.id_val,'val',toUInt32(number)) from numbers(4)
|
||||
SELECT joinGet(db_test.id_val,'val',toUInt32(number)) from numbers(4)
|
||||
```
|
||||
|
||||
Result:
|
||||
|
||||
```text
|
||||
┌─joinGet(dbtest.id_val, 'val', toUInt32(number))─┐
|
||||
│ 0 │
|
||||
│ 11 │
|
||||
│ 12 │
|
||||
│ 0 │
|
||||
└─────────────────────────────────────────────────┘
|
||||
┌─joinGet(db_test.id_val, 'val', toUInt32(number))─┐
|
||||
│ 0 │
|
||||
│ 11 │
|
||||
│ 12 │
|
||||
│ 0 │
|
||||
└──────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
## modelEvaluate(model_name, ...) {#function-modelevaluate}
|
||||
|
@ -366,7 +366,7 @@ Ok.
|
||||
- [Движок таблиц Join](../table_engines/join.md)
|
||||
- [join_default_strictness](#settings-join_default_strictness)
|
||||
|
||||
## join_use_nulls {#settings-join_use_nulls}
|
||||
## join_use_nulls {#join_use_nulls}
|
||||
|
||||
Устанавливает тип поведения [JOIN](../../query_language/select.md). При объединении таблиц могут появиться пустые ячейки. ClickHouse заполняет их по-разному в зависимости от настроек.
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
Подготовленная структура данных для использования в операциях [JOIN](../../query_language/select.md#select-join).
|
||||
|
||||
## Создание таблицы
|
||||
## Создание таблицы {#creating-a-table}
|
||||
|
||||
```sql
|
||||
CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
|
||||
|
@ -846,9 +846,9 @@ SELECT filesystemAvailable() AS "Free space", toTypeName(filesystemAvailable())
|
||||
|
||||
## joinGet {#joinget}
|
||||
|
||||
Функция позволяет извлекать данные из таблицы таким же образом как из [словаря](https://clickhouse.yandex/docs/ru/query_language/dicts/).
|
||||
Функция позволяет извлекать данные из таблицы таким же образом как из [словаря](../dicts/index.md).
|
||||
|
||||
Получает данные из таблиц [Join](https://clickhouse.yandex/docs/ru/operations/table_engines/join/) по ключу.
|
||||
Получает данные из таблиц [Join](../../operations/table_engines/join.md#creating-a-table) по ключу.
|
||||
|
||||
Поддерживаются только таблицы, созданные с `ENGINE = Join(ANY, LEFT, <join_keys>)`.
|
||||
|
||||
@ -860,8 +860,7 @@ joinGet(join_storage_table_name, `value_column`, join_keys)
|
||||
|
||||
**Параметры**
|
||||
|
||||
- `join_storage_name` — [идентификатор](../../syntax/#syntax-identifiers), который указывает, откуда производится выборка данных. Чаще всего это имя базы данных и/или таблица.
|
||||
Поиск по идентификатору осуществляется сначала в базе данных по умолчанию (в конфигурации `default_database`), а затем по всем базам данных. Чтобы переопределить базу данных по умолчанию, используйте команду `USE db_name`.
|
||||
- `join_storage_name` — [идентификатор](../../syntax/#syntax-identifiers), который указывает, откуда производится выборка данных. Чаще всего это имя базы данных и/или таблица. Поиск по идентификатору осуществляется сначала в базе данных по умолчанию (см. конфигурацию `default_database`), а затем по всем базам данных. Чтобы переопределить базу данных по умолчанию, используйте команду `USE db_name`.
|
||||
- Для таблиц с уникальным названием достататочно указать только имя таблицы.
|
||||
- Для неуникальных таблиц укажите базу данных, а затем таблицу. В качестве разделителя используйте точку.
|
||||
- `value_column` — столбец, из которого нужно произвести выборку данных.
|
||||
@ -871,19 +870,16 @@ joinGet(join_storage_table_name, `value_column`, join_keys)
|
||||
|
||||
Возвращает значение по списку ключей.
|
||||
|
||||
Если значения не существует в исходной таблице, вернется `0` или `null` в соответствии с настройками [join_use_nulls](https://clickhouse.yandex/docs/ru/operations/settings/settings/#settings-join_use_nulls).
|
||||
|
||||
Тип: [все Типы Данных](https://clickhouse.yandex/docs/ru/data_types/).
|
||||
|
||||
Если значения не существует в исходной таблице, вернется `0` или `null` в соответствии с настройками [join_use_nulls](../../operations/settings/settings.md#join_use_nulls).
|
||||
|
||||
**Пример**
|
||||
|
||||
Входная таблица:
|
||||
|
||||
```sql
|
||||
CREATE TABLE id_val(`id` UInt32, `val` UInt32) ENGINE = Join(ANY, LEFT, id)
|
||||
|
||||
INSERT INTO id_val VALUES (1,11)(2,12)(4,13)
|
||||
CREATE DATABASE db_test
|
||||
CREATE TABLE db_test.id_val(`id` UInt32, `val` UInt32) ENGINE = Join(ANY, LEFT, id)
|
||||
INSERT INTO db_test.id_val VALUES (1,11)(2,12)(4,13)
|
||||
```
|
||||
|
||||
```text
|
||||
@ -897,18 +893,18 @@ INSERT INTO id_val VALUES (1,11)(2,12)(4,13)
|
||||
Запрос:
|
||||
|
||||
```sql
|
||||
SELECT joinGet(dbtest.id_val,'val',toUInt32(number)) from numbers(4)
|
||||
SELECT joinGet(db_test.id_val,'val',toUInt32(number)) from numbers(4)
|
||||
```
|
||||
|
||||
Результат:
|
||||
|
||||
```text
|
||||
┌─joinGet(dbtest.id_val, 'val', toUInt32(number))─┐
|
||||
│ 0 │
|
||||
│ 11 │
|
||||
│ 12 │
|
||||
│ 0 │
|
||||
└─────────────────────────────────────────────────┘
|
||||
┌─joinGet(db_test.id_val, 'val', toUInt32(number))─┐
|
||||
│ 0 │
|
||||
│ 11 │
|
||||
│ 12 │
|
||||
│ 0 │
|
||||
└──────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
## modelEvaluate(model_name, ...) {#function-modelevaluate}
|
||||
|
Loading…
Reference in New Issue
Block a user