跳到主要内容
跳到主要内容

view 表函数

将子查询转换为一张表。该函数用于实现视图(参见 CREATE VIEW)。生成的表本身不存储数据,而只保存指定的 SELECT 查询。从该表读取时,ClickHouse 会执行该查询,并从结果中丢弃所有不需要的列。

语法

view(subquery)

参数

  • subquerySELECT 查询。

返回值

  • 一张表。

示例

输入表:

┌─id─┬─name─────┬─days─┐
│  1 │ 一月     │   31 │
│  2 │ 二月     │   29 │
│  3 │ 三月     │   31 │
│  4 │ 四月     │   30 │
└────┴──────────┴──────┘

查询:

SELECT * FROM view(SELECT name FROM months);

结果:

┌─name─────┐
│ 一月  │
│ 二月 │
│ 三月    │
│ 四月    │
└──────────┘

您可以将 view 函数作为 remotecluster 表函数的参数使用:

SELECT * FROM remote(`127.0.0.1`, view(SELECT a, b, c FROM table_name));
SELECT * FROM cluster(`cluster_name`, view(SELECT a, b, c FROM table_name));