Klauzule VALUES

Platí pro:zaškrtnutá možnost Ano , kontrola Databricks SQL označená ano Databricks Runtime

Vytvoří vloženou dočasnou tabulku pro použití v rámci dotazu.

Syntaxe

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

SELECT expression [, ...] [table_alias]

Parametry

  • Výraz

    Kombinace jedné nebo více hodnot, operátorů a funkcí SQL, jejichž výsledkem je hodnota.

  • table_alias

    Volitelný popisek, který umožňuje odkazovat na sadu výsledků dotazu podle názvu.

Každá řazená kolekce členů tvoří řádek.

Pokud existuje více než jeden řádek, musí se počet polí v každé řazené kolekci členů shodovat.

Pokud při použití VALUES syntaxe nejsou zadány žádné řazené kolekce členů, každý výraz odpovídá jedné řazené kolekci členů pole.

Při použití SELECT syntaxe tvoří všechny výrazy jeden řádek dočasné tabulky.

N-to pole každé řazené kolekce členů musí sdílet nejméně společný typ. Pokud table_alias určuje názvy sloupců, musí jejich počet odpovídat počtu výrazů na řazenou kolekci členů.

Výsledkem je dočasná tabulka, kde typ každého sloupce je nejméně společný typ odpovídajících polí řazených kolekcí členů.

Příklady

-- 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