跳到主要内容

CREATE AGGREGATING INDEX

引入或更新于:v1.2.339
企业版功能
AGGREGATING INDEX是企业版功能。 如需获取许可证,请联系 Databend 支持团队

在 Databend 中创建一个新的聚合索引(Aggregating Index)。

语法

CREATE [ OR REPLACE ] [ ASYNC ] AGGREGATING INDEX <index_name> AS SELECT ...
  • ASYNC 选项:添加 ASYNC 是可选的。它允许异步创建索引,即索引不会立即构建。要稍后构建,请使用 REFRESH AGGREGATING INDEX 命令。

  • 创建聚合索引(Aggregating Index)时,请将其使用限制在标准的聚合函数(例如 AVG、SUM、MIN、MAX、COUNT 和 GROUP BY)内,同时请注意,不支持 GROUPING SETS、窗口函数LIMITORDER BY,否则将收到错误提示:Currently create aggregating index just support simple query, like: SELECT ... FROM ... WHERE ... GROUP BY ...

  • 创建聚合索引(Aggregating Index)时定义的查询(Query)筛选范围应与实际查询(Query)的范围匹配或包含实际查询(Query)的范围。

  • 要确认聚合索引(Aggregating Index)是否对某个查询(Query)生效,请使用 EXPLAIN 命令来分析该查询(Query)。

示例

此示例为查询(Query) “SELECT MIN(a), MAX(c) FROM agg” 创建一个名为 my_agg_index 的聚合索引(Aggregating Index):

-- 准备数据
CREATE TABLE agg(a int, b int, c int);
INSERT INTO agg VALUES (1,1,4), (1,2,1), (1,2,4), (2,2,5);

-- 创建一个聚合索引
CREATE AGGREGATING INDEX my_agg_index AS SELECT MIN(a), MAX(c) FROM agg;
开始使用 Databend Cloud
低成本
快速分析
多种数据源
弹性扩展
注册