SelectDB Cloud
SQL 手册
类型
ARRAY

ARRAY

description

ARRAY<T>

由T类型元素组成的数组,不能作为key列使用。目前支持在Duplicate模型的表中使用。

T支持的类型有:

BOOLEAN, TINYINT, SMALLINT, INT, BIGINT, LARGEINT, FLOAT, DOUBLE, DECIMAL, DATE,
DATETIME, CHAR, VARCHAR, STRING

notice

使用前可以通过如下命令打开Array开关:

$ mysql-client > admin set frontend config("enable_array_type"="true");

这种方式下Array开关会在Fe进程重启后重置,或者在fe.conf中添加enable_array_type=true配置项可永久生效。

example

建表示例如下:

mysql> CREATE TABLE `array_test` (
  `id` int(11) NULL COMMENT "",
  `c_array` ARRAY<int(11)> NULL COMMENT ""
) ENGINE=OLAP
DUPLICATE KEY(`id`)
COMMENT "OLAP"
DISTRIBUTED BY HASH(`id`) BUCKETS 1
PROPERTIES (
"replication_allocation" = "tag.location.default: 1",
"in_memory" = "false",
"storage_format" = "V2"
);

插入数据示例:

mysql> INSERT INTO `array_test` VALUES (1, [1,2,3,4,5]);
mysql> INSERT INTO `array_test` VALUES (2, array(6,7,8)), (3, array()), (4, null);

注意:以上sql仅在非向量化场景下,支持 array() 函数,向量化场景不支持。

查询数据示例:

mysql> SELECT * FROM `array_test`;
+------+-----------------+
| id   | c_array         |
+------+-----------------+
|    1 | [1, 2, 3, 4, 5] |
|    2 | [6, 7, 8]       |
|    3 | []              |
|    4 | NULL            |
+------+-----------------+

keywords

ARRAY
© 2023 北京飞轮数据科技有限公司 京ICP备2022004029号 | Apache、Apache Doris 以及相关开源项目名称均为 Apache 基金会商标