跳转到主要内容
T 类型元素构成的数组,数组索引从 1 开始。T 可以是任何数据类型,包括数组。

创建 Array

您可以使用函数来创建 Array:
也可以使用 []
创建数组的示例:

使用数据类型

动态创建数组时,ClickHouse 会自动将参数类型确定为能够容纳所有已列出参数的最窄数据类型。如果包含任何 Nullable 或字面量 NULL 值,数组元素的类型也会变为 Nullable 如果 ClickHouse 无法确定数据类型,则会抛出异常。例如,当尝试同时用字符串和数字创建数组时,就会发生这种情况 (SELECT array(1, 'a')) 。 自动检测数据类型的示例:
如果尝试创建由不兼容数据类型构成的数组,ClickHouse 会抛出异常:

Array 的大小

可以通过 size0 子列获取数组大小,而无需读取整个列。对于多维数组,可以使用 sizeN-1,其中 N 是所需的维度。 示例
Query
Response

从 Array 中读取嵌套子列

如果 Array 中的嵌套类型 T 具有子列 (例如,它是一个命名元组) ,则可以通过 Array(T) 类型以相同的子列名称读取这些子列。子列的类型将是原始子列类型对应的 Array 示例
最后修改于 2026年7月2日