klauzule VALUES
Platí pro: Databricks SQL Databricks Runtime
Vytvoří 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žní odkazování na sadu výsledků podle názvu.
Každá řazená kolekce členů představuje řádek.
Pokud existuje více než jeden řádek, musí se počet polí v každé řazené kolekci členů shodovat.
Při použití VALUES
syntaxe, pokud nejsou zadány žádné řazené kolekce členů, každý výraz odpovídá jedné řazené kolekci členů pole.
Při použití syntaxe SELECT
všechny výrazy představují dočasnou tabulku s jedním řádkem.
Nth 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 jeden n-tici.
Výsledkem je dočasná tabulka, kde je typ každého sloupce nejběžnějším typem polí odpovídajících tuplů.
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