跳转到主要内容

描述

BSONEachRow 格式会将数据解析为一系列彼此之间没有任何分隔符的二进制 JSON (BSON) 文档。 每一行会被格式化为一个单独的文档,而每一列会被格式化为 BSON 文档中的一个独立字段,并以列名作为键。

数据类型匹配

对于输出,使用以下 ClickHouse 类型与 BSON 类型之间的对应关系: 对于输入,使用以下 BSON 类型与 ClickHouse 类型之间的对应关系: 不支持其他 BSON 类型。此外,它还会在不同整数类型之间进行转换。 例如,可以将 BSON int32 值作为 UInt8 插入 ClickHouse。 Int128/UInt128/Int256/UInt256/Decimal128/Decimal256 等大整数和 Decimal,可从二进制子类型为 \x00 的 BSON Binary 值中解析。 在这种情况下,该格式会验证二进制数据的大小是否与预期值的大小一致。
此格式在 Big-Endian 平台上无法正常工作。

示例用法

插入数据

使用一个名为 football.bson、包含以下数据的 BSON 文件:
插入数据:

读取数据

使用 BSONEachRow 格式读取数据:
BSON 是一种二进制格式,无法在终端中以人类可读的形式显示。请使用 INTO OUTFILE 将其输出为 BSON 文件。

格式设置

最后修改于 2026年6月10日