跳转到主要内容
Values 表函数可用于创建一个以值填充列的临时存储。它适合用于快速测试或生成样本数据。
Values 是一个不区分大小写的函数。也就是说,VALUESvalues 都是有效的。

语法

VALUES 表函数的基本语法如下:
常用形式为:

参数

  • column1_name Type1, ... (可选) 。String 用于指定列名和类型。如果省略此参数,列名将 依次为 c1c2 等。
  • (value1_row1, value2_row1)Tuples 包含任意类型的值。
逗号分隔的元组也可以替换为单个值。在这种情况下, 每个值都会被视为一新行。详见 示例 部分。

返回值

  • 返回一个包含所提供值的临时表。

示例

Query
Response
VALUES 也可用于单个值,而不只是元组。例如:
Query
Response
或者不提供行说明 (即语法中的 'column1_name Type1, column2_name Type2, ...') ,此时列名会自动生成。 例如:
Query
Response
Query
Response

SQL 标准 VALUES 子句

从 26.3 版本开始,ClickHouse 也支持 SQL 标准中的 VALUES 子句,可在 FROM 中作为表表达式使用,这种写法也见于 PostgreSQL、MySQL、DuckDB 和 SQL Server。该语法 在内部会被重写为使用上文所述的 values 表函数。
Query
Response
可用于 CTE 中:
Query
以及在 JOIN 操作中:
Query
AS t(col1, col2, ...) 后面的列别名遵循标准 SQL 语法,用于 为派生表的列命名。如省略,则列名默认为 c1c2 等。

另请参阅

最后修改于 2026年7月2日