Klauzule VALUES
Platí pro: , kontrola Databricks SQL 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
-
Kombinace jedné nebo více hodnot, operátorů a funkcí SQL, jejichž výsledkem je hodnota.
-
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