Values 表函数
Values 表函数允许你创建一个临时存储,用于为列填充值。它对于快速测试或生成示例数据非常有用。
注意
Values 是不区分大小写的函数。也就是说,VALUES 或 values 都是有效的写法。
语法
VALUES 表函数的基本语法如下:
通常用作:
参数
column1_name Type1, ...(可选) 。String 用于指定列名和类型。如果省略该参数,列名将依次为c1、c2等。(value1_row1, value2_row1)。Tuples 包含任意类型的值。
注意
以逗号分隔的元组也可以用单个值代替。在这种情况下,每个值都被视为一行新数据。详情参见示例部分。
返回值
- 返回一个包含传入值的临时表。
示例
VALUES 也可以用于单个值,而不仅限于元组。例如:
或者不提供行规范 (在语法中为 'column1_name Type1, column2_name Type2, ...') ,此时系统会自动为列命名。
例如:
SQL 标准 VALUES 子句
从 26.3 版本开始,ClickHouse 也支持 SQL 标准中的 VALUES 子句,可在 FROM 中作为表表达式使用,
其用法与 PostgreSQL、MySQL、DuckDB 和 SQL Server 相同。该语法
在内部会被重写为使用上述 values 表函数。
它可在 CTE 中使用:
以及在 JOIN 操作中:
注意
AS t(col1, col2, ...) 后面的列别名遵循标准 SQL 语法,用于
为派生表中的列命名。若省略,则列名默认为 c1、c2 等。