> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-8a08bda2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Documentación de la cláusula INTO OUTFILE

# Cláusula INTO OUTFILE

La cláusula `INTO OUTFILE` redirige el resultado de una consulta `SELECT` a un archivo en el lado del **cliente**.

Se admiten archivos comprimidos. El tipo de compresión se detecta por la extensión del nombre del archivo (de forma predeterminada, se usa el modo `'auto'`). También puede especificarse explícitamente en una cláusula `COMPRESSION`. El nivel de compresión para un tipo de compresión determinado puede especificarse en una cláusula `LEVEL`.

**Sintaxis**

```sql theme={null}
SELECT <expr_list> INTO OUTFILE file_name [AND STDOUT] [APPEND | TRUNCATE] [COMPRESSION type [LEVEL level]]
```

`file_name` y `type` son literales de cadena. Los tipos de compresión admitidos son: `'none'`, `'gzip'`, `'deflate'`, `'br'`, `'xz'`, `'zstd'`, `'lz4'`, `'bz2'`.

`level` es un literal numérico. Se admiten enteros positivos dentro de los siguientes rangos: `1-12` para el tipo `lz4`, `1-22` para el tipo `zstd` y `1-9` para los demás tipos de compresión.

<div id="implementation-details">
  ## Detalles de implementación
</div>

* Esta funcionalidad está disponible en el [cliente de línea de comandos](/es/concepts/features/interfaces/client) y [clickhouse-local](/es/concepts/features/tools-and-utilities/clickhouse-local). Por lo tanto, una consulta enviada a través de la [interfaz HTTP](/es/concepts/features/interfaces/http) fallará.
* La consulta fallará si ya existe un archivo con el mismo nombre de archivo.
* El [formato de salida](/es/reference/formats) predeterminado es `TabSeparated` (como en el modo por lotes del cliente de línea de comandos). Use la cláusula [FORMAT](/es/reference/statements/select/format) para cambiarlo.
* Si se menciona `AND STDOUT` en la consulta, la salida que se escribe en el archivo también se muestra en la salida estándar. Si se usa compresión, el texto sin cifrar se muestra en la salida estándar.
* Si se menciona `APPEND` en la consulta, la salida se añade a un archivo existente. Si se usa compresión, no se puede usar `APPEND`.
* Al escribir en un archivo que ya existe, se debe usar `APPEND` o `TRUNCATE`.

**Ejemplo**

Ejecute la siguiente consulta con el [cliente de línea de comandos](/es/concepts/features/interfaces/client):

```bash title="Query" theme={null}
clickhouse-client --query="SELECT 1,'ABC' INTO OUTFILE 'select.gz' FORMAT CSV;"
zcat select.gz 
```

```text title="Response" theme={null}
1,"ABC"
```
