mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-12 02:23:14 +00:00
cd14f9ebcb
* split up select.md * array-join.md basic refactoring * distinct.md basic refactoring * format.md basic refactoring * from.md basic refactoring * group-by.md basic refactoring * having.md basic refactoring * additional index.md refactoring * into-outfile.md basic refactoring * join.md basic refactoring * limit.md basic refactoring * limit-by.md basic refactoring * order-by.md basic refactoring * prewhere.md basic refactoring * adjust operators/index.md links * adjust sample.md links * adjust more links * adjust operatots links * fix some links * adjust aggregate function article titles * basic refactor of remaining select clauses * absolute paths in make_links.sh * run make_links.sh * remove old select.md locations * translate docs/es * translate docs/fr * translate docs/fa * remove old operators.md location * change operators.md links * adjust links in docs/es * adjust links in docs/es * minor texts adjustments * wip * update machine translations to use new links * fix changelog * es build fixes * get rid of some select.md links * temporary adjust ru links * temporary adjust more ru links * improve curly brace handling * adjust ru as well * fa build fix * ru link fixes * zh link fixes * temporary disable part of anchor checks
48 lines
2.2 KiB
Markdown
48 lines
2.2 KiB
Markdown
---
|
|
machine_translated: true
|
|
machine_translated_rev: 72537a2d527c63c07aa5d2361a8829f3895cf2bd
|
|
toc_priority: 46
|
|
toc_title: "\u5165\u529B"
|
|
---
|
|
|
|
# 入力 {#input}
|
|
|
|
`input(structure)` -に送られるデータを効果的に変え、挿入することを可能にする表機能
|
|
別の構造を持つテーブルに指定された構造を持つサーバー。
|
|
|
|
`structure` -以下の形式でサーバーに送信されるデータの構造 `'column1_name column1_type, column2_name column2_type, ...'`.
|
|
例えば, `'id UInt32, name String'`.
|
|
|
|
この関数は、次の場合にのみ使用できます `INSERT SELECT` それ以外の場合は通常の表関数のように動作します
|
|
(例えば、サブクエリなどで使用できます。).
|
|
|
|
データは通常のような方法で送信することができます `INSERT` クエリと任意の利用可能に渡されます [形式](../../interfaces/formats.md#formats)
|
|
クエリの最後に指定する必要があります(通常とは異なります `INSERT SELECT`).
|
|
|
|
この機能の主な特徴は、サーバがクライアントからデータを受信すると同時に変換することです
|
|
の式のリストに従って `SELECT` 節とターゲットテーブルへの挿入。 一時テーブル
|
|
転送されたすべてのデータは作成されません。
|
|
|
|
**例**
|
|
|
|
- は、 `test` 表の構造は次のとおりです `(a String, b String)`
|
|
そしてデータ `data.csv` 異なる構造を持っています `(col1 String, col2 Date, col3 Int32)`. 挿入のクエリ
|
|
からのデータ `data.csv` に `test` 同時変換のテーブルは次のようになります:
|
|
|
|
<!-- -->
|
|
|
|
``` bash
|
|
$ cat data.csv | clickhouse-client --query="INSERT INTO test SELECT lower(col1), col3 * col3 FROM input('col1 String, col2 Date, col3 Int32') FORMAT CSV";
|
|
```
|
|
|
|
- もし `data.csv` 同じ構造のデータを含む `test_structure` 表として `test` そしてこれら二つのクエリが等しい:
|
|
|
|
<!-- -->
|
|
|
|
``` bash
|
|
$ cat data.csv | clickhouse-client --query="INSERT INTO test FORMAT CSV"
|
|
$ cat data.csv | clickhouse-client --query="INSERT INTO test SELECT * FROM input('test_structure') FORMAT CSV"
|
|
```
|
|
|
|
[元の記事](https://clickhouse.tech/docs/en/query_language/table_functions/input/) <!--hide-->
|