跳转到主要内容
本规范说明了可用于对 ClickHouse 数据类型进行二进制编码和解码的二进制格式。该格式用于 Dynamic 列的二进制序列化,也可在相应设置下用于输入/输出格式 RowBinaryWithNamesAndTypesNative 下表说明了每种数据类型在二进制格式中的表示方式。每种数据类型的编码由 1 个字节组成,用于标识类型,以及一些可选的附加信息。 二进制编码中的 var_uint 表示其大小使用可变长度数量压缩进行编码。 对于 JSON 类型,字节 uint8_serialization_version 表示序列化版本。目前该版本始终为 0,但如果将来为 JSON 类型引入新的参数,这个值可能会发生变化。

时间间隔类型的二进制编码

下表说明了 Interval 数据类型中不同时间间隔类型的二进制编码方式。

聚合函数参数二进制编码

下表说明了 AggregateFunctionSimpleAggregateFunction 的参数编码方式。 参数编码由 1 个字节的参数类型标识以及参数值本身组成。
最后修改于 2026年6月12日