ClickHouse/docs/es/query_language/table_functions/input.md
Ivan Blinkov f315e5079b
More complete "es" translation (#9791)
* replace exit with assert in test_single_page

* improve save_raw_single_page docs option

* More grammar fixes

* "Built from" link in new tab

* fix mistype

* Example of include in docs

* add anchor to meeting form

* Draft of translation helper

* WIP on translation helper

* Replace some fa docs content with machine translation

* add normalize-en-markdown.sh

* normalize some en markdown

* normalize some en markdown

* admonition support

* normalize

* normalize

* normalize

* support wide tables

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* lightly edited machine translation of introdpection.md

* lightly edited machhine translation of lazy.md

* WIP on translation utils

* Normalize ru docs

* Normalize other languages

* some fixes

* WIP on normalize/translate tools

* add requirements.txt

* [experimental] add es docs language as machine translated draft

* remove duplicate script

* Back to wider tab-stop (narrow renders not so well)

* Links to nowhere check at least for English

* use f string

* More complete es translation
2020-03-21 12:17:06 +03:00

2.0 KiB

entrada

input(structure) - función de tabla que permite convertir e insertar efectivamente los datos enviados al servidor con estructura dada a la tabla con otra estructura.

structure - estructura de los datos enviados al servidor en el siguiente formato 'column1_name column1_type, column2_name column2_type, ...'. Por ejemplo, 'id UInt32, name String'.

Esta función sólo se puede utilizar en INSERT SELECT consulta y sólo una vez, pero por lo demás se comporta como función de tabla ordinaria (por ejemplo, se puede usar en subconsulta, etc.).

Los datos se pueden enviar de cualquier manera como para ordinario INSERT Consulta y pasado en cualquier disponible Formato que debe especificarse al final de la consulta (a diferencia de lo ordinario INSERT SELECT).

La característica principal de esta función es que cuando el servidor recibe datos del cliente, los convierte simultáneamente según la lista de expresiones en el SELECT cláusula e inserta en la tabla de destino. Tabla temporal con todos los datos transferidos no se crea.

Ejemplos

  • Deje que el test tiene la siguiente estructura (a String, b String) y datos en data.csv Tiene una estructura diferente (col1 String, col2 Date, col3 Int32). Consulta de inserción datos de la data.csv es el test con conversión simultánea se ve así:
$ cat data.csv | clickhouse-client --query="INSERT INTO test SELECT lower(col1), col3 * col3 FROM input('col1 String, col2 Date, col3 Int32') FORMAT CSV";
  • Si data.csv contiene datos de la misma estructura test_structure como la mesa test entonces estas dos consultas son iguales:
$ 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"

Artículo Original