VALUES 子句
適用於:Databricks SQL
Databricks Runtime
產生內嵌暫存 table,以在查詢中使用。
語法
VALUES {expression | ( expression [, ...] ) } [, ...] [table_alias]
SELECT expression [, ...] [table_alias]
Parameters
-
一或多個 values、運算符和 SQL 函式的組合,以產生值。
-
可選的標籤,用於讓結果 set 可以被名稱引用。
每個 Tuple 都會構成一個數據列。
如果有多個數據列,每個 Tuple 中的欄位數目必須相符。
使用 VALUES
語法時,如果未指定任何 Tuple,則每個表達式等同於單一欄位 Tuple。
使用 SELECT
語法時,所有表示式都會構成單一資料列暫存 table。
每個 Tuple 的第 n 個字段必須共用最不常見的類型。
如果 table_alias
指定 column 名稱,那麼其數目必須與每個元組的運算式數目相符。
結果是暫時 tablewhere 每個 column的類型都是相符 Tuple 字段的最低通用類型。
範例
-- single row, without a table alias
> VALUES ("one", 1);
one 1
-- Multiple rows, one column
> VALUES 1, 2, 3;
1
2
3
-- three rows with a table alias
> SELECT data.a, b
FROM VALUES ('one', 1),
('two', 2),
('three', NULL) AS data(a, b);
one 1
two 2
three NULL
-- complex types with a table alias
> SELECT a, b
FROM VALUES ('one', array(0, 1)),
('two', array(2, 3)) AS data(a, b);
one [0, 1]
two [2, 3]
-- Using the SELECT syntax
> SELECT 'one', 2
one 2