VALUES 子句

適用于:核取標示為是 Databricks SQL 檢查標示為是 Databricks Runtime

產生內嵌臨時表以用於查詢。

語法

VALUES {expression | ( expression [, ...] ) } [, ...] [table_alias]

SELECT expression [, ...] [table_alias]

參數

  • 表達

    產生值的一或多個值、運算子和 SQL 函式的組合。

  • table_alias

    選擇性標籤,允許依名稱參考結果集。

每個 Tuple 都會構成一個資料列。

如果有一個以上的資料列,每個 Tuple 中的欄位數目必須相符。

使用 VALUES 語法時,如果未指定任何 Tuple,則每個運算式都等於單一欄位 Tuple。

使用 SELECT 語法時,所有運算式都會構成單一資料列臨時表。

每個 Tuple 的第 n 個欄位必須共用最不常見的類型。 如果 table_alias 指定資料行名稱,其數目必須符合每個 Tuple 的運算式數目。

結果是臨時表,其中每個資料行的類型都是相符 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