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

# 如何将 ClickHouse 中的数据导出到文件

> 了解将数据从 ClickHouse 导出到文件的多种方法，包括 `INTO OUTFILE`、File 表引擎以及命令行重定向。

{frontMatter.description}

<div id="using-into-outfile-clause">
  ## 使用 INTO OUTFILE 子句
</div>

在查询中添加 [INTO OUTFILE](/zh/reference/statements/select/into-outfile) 子句。

例如：

```sql theme={null}
SELECT * FROM table INTO OUTFILE 'file'
```

默认情况下，ClickHouse 会根据文件名的扩展名来确定输出格式和压缩方式。例如，`nyc_taxi` 中的所有行都会以 Parquet 格式导出到 `nyc_taxi.parquet`：

```sql theme={null}
SELECT *
FROM nyc_taxi
INTO OUTFILE 'taxi_rides.parquet'
```

以下文件将是一个经过压缩的制表符分隔文件：

```sql theme={null}
SELECT *
FROM nyc_taxi
INTO OUTFILE 'taxi_rides.tsv.gz'
```

如果 ClickHouse 无法根据文件扩展名确定格式，则输出数据默认采用 [TabSeparated](/zh/reference/formats/index) [输出格式](/zh/reference/formats/index)。要指定[输出格式](/zh/reference/formats/index)，请使用 [FORMAT 子句](/zh/reference/statements/select/format)。

例如：

```sql theme={null}
SELECT *
FROM nyc_taxi
INTO OUTFILE 'taxi_rides.txt'
FORMAT CSV
```

<div id="using-a-file-engine-table">
  ## 使用 File 表引擎
</div>

另一个选项是使用 [File 表引擎](/zh/reference/engines/table-engines/special/file)，即由 ClickHouse 使用文件来存储数据。你可以直接对该文件执行查询和插入操作。

例如：

```sql theme={null}
CREATE TABLE my_table (
   x UInt32,
   y String,
   z DateTime
)
ENGINE = File(Parquet)
```

插入几行数据：

```sql theme={null}
INSERT INTO my_table VALUES
   (1, 'Hello', now()),
   (2, 'World', now()),
   (3, 'Goodbye', now())
```

该文件存储在你的 ClickHouse server 的 `data` 文件夹中——具体位于 `/data/default/my_table` 下名为 `data.Parquet` 的文件中。

<Note>
  使用 `File` 表引擎在文件系统上创建和查询文件非常方便，但请记住，`File` 表不是 `MergeTree` 表，因此无法享受 `MergeTree` 带来的全部优势。在需要以便捷格式从 ClickHouse 导出数据时，可以使用 `File` 图个方便。
</Note>

<div id="using-command-line-redirection">
  ## 使用命令行重定向
</div>

```bash theme={null}
$ clickhouse-client --query "SELECT * from table" --format FormatName > result.txt
```

请参见 [clickhouse-client](/zh/concepts/features/interfaces/cli)。
