Snowpark Migration Accelerator: Values

Descrição

Cria uma tabela temporária dentro da consulta que pode ser usada imediatamente. Para obter mais informações, consulte Referência da linguagem SQL do Databricks VALUES.

A subcláusula VALUES em uma cláusula FROM da instrução SELECT permite definir um conjunto de valores fixos para criar um número específico de linhas. (Referência da linguagem SQL do Snowflake VALUES)

Sintaxe

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

SELECT expression [, ...] [table_alias]
Copy
SELECT ...
FROM ( VALUES ( <expr> [ , <expr> [ , ... ] ] ) [ , ( ... ) ] ) [ [ AS ] <table_alias> [ ( <column_alias> [, ... ] ) ] ]
[ ... ]
Copy

Amostra de padrões da origem

Dados de configuração

Databricks

CREATE TEMPORARY VIEW number1(c) AS VALUES (3), (1), (2), (2), (3), (4);
Copy

Snowflake

CREATE TEMPORARY TABLE number1(c int);
INSERT INTO number1 VALUES (3), (1), (2), (2), (3), (4);
Copy

Código do padrão

Databricks

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

c

3

1

2

4

Snowflake

-- single row, without a table alias
SELECT * FROM (VALUES ('one', 1));

-- Multiple rows, one column
SELECT * FROM (VALUES (1), (2), (3));

-- three rows with a table alias
SELECT a, b
    FROM (VALUES ('one', 1),
                ('two', 2),
                ('three', NULL)) AS data(a, b);

-- complex types with a table alias
SELECT a, b 
    FROM 
    (VALUES ('one', '[0, 1]'), 
            ('two', '[2, 3]')
            ) AS data(a, b);

-- Using the SELECT syntax
SELECT 'one', 2
Copy

c

3

1

2

4

Problemas conhecidos

Não foram encontrados problemas