【发布时间】:2020-05-09 06:52:17
【问题描述】:
A 是一个 collapsingMergeTree 引擎表
CREATE VIEW A AS SELECT * FROM A final;
创建物化视图 a_mview1 到 B AS选择ID, 姓名 来自A;
这不起作用,似乎我们无法在视图上显示 mview..但是为什么?
【问题讨论】:
标签: clickhouse
A 是一个 collapsingMergeTree 引擎表
CREATE VIEW A AS SELECT * FROM A final;
创建物化视图 a_mview1 到 B AS选择ID, 姓名 来自A;
这不起作用,似乎我们无法在视图上显示 mview..但是为什么?
【问题讨论】:
标签: clickhouse
CREATE VIEW A AS SELECT * FROM A final;
这是不可能的。因为 MV 从不读取源表。 MV 从 INSERT 命令获取插入的块。
【讨论】:
普通视图不存储任何数据(参见doc),因此将其用作Materialized视图的数据源是错误的。
需要根据原始表创建物化视图:
CREATE TABLE A (
..
) ENGINE = CollapsingMergeTree
.. ;
CREATE MATERIALIZED VIEW a_mview1 TO B
AS
SELECT ..
FROM A
.. ;
【讨论】: