为什么我们不能在点击屋中的另一个视图之上制作物化视图?



A是一个collapsingMergeTree引擎表

将视图A创建为SELECT*FROM A final;

创建材料化视图a_mview1到BAS选择id,名称来自A;

这不起作用,似乎我们无法在视图中进行mview。。但为什么呢?

Normal视图不存储任何数据(请参阅文档(,因此将其用作MaterializedView的数据源是错误的。

它需要基于原始表创建Materialized View:

CREATE TABLE A (
..
) ENGINE = CollapsingMergeTree
.. ;
CREATE MATERIALIZED VIEW a_mview1 TO B 
AS 
SELECT ..
FROM A
.. ;

有关详细信息,请参阅文章ClickHouse Materialized Views Illuminated。

CREATE VIEW A AS SELECT*FROM A final;

这是不可能的。因为MV从不读取源表。MV从INSERT命令中获取插入的块。

最新更新