VALUES, clause

S’applique à : case marquée oui Databricks SQL case marquée oui Databricks Runtime

Produit une table temporaire incluse à utiliser dans la requête.

Syntaxe

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

SELECT expression [, ...] [table_alias]

Paramètres

  • expression

    Combinaison d’un ou plusieurs opérateurs, valeurs et fonctions SQL qui produisent une valeur.

  • table_alias

    Étiquette facultative pour permettre le référencement du jeu de résultats par nom.

Chaque tuple constitue une ligne.

S’il y a plus d’une ligne, le nombre de champs dans chaque tuple doit correspondre.

Lors de l’utilisation de la syntaxe VALUES, si aucun tuple n’est spécifié, chaque expression correspond à un tuple de champ unique.

Lors de l’utilisation de la syntaxe SELECT, toutes les expressions constituent une table temporaire d’une seule ligne.

Le champ nth de chaque tuple doit partager un moindre type commun. Si table_alias spécifie des noms de colonnes, leur nombre doit correspondre au nombre d’expressions par tuple.

Le résultat est une table temporaire où le type de chaque colonne est le moindre type commun des champs de tuples correspondants.

Exemples

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