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

view 表函数

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

语法

view(subquery)

参数

  • subquerySELECT 查询。

返回值

  • 一张表。

示例

输入表:

┌─id─┬─name─────┬─days─┐
│  1 │ January  │   31 │
│  2 │ February │   29 │
│  3 │ March    │   31 │
│  4 │ April    │   30 │
└────┴──────────┴──────┘

查询:

SELECT * FROM view(SELECT name FROM months);

结果:

┌─name─────┐
│ January  │
│ February │
│ March    │
│ April    │
└──────────┘

您可以将 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));