SET¶
Inicializa o valor de uma variável de sessão para o resultado de uma expressão SQL.
- Consulte também:
Sintaxe¶
SET <var> = <expr> SET ( <var> [ , <var> ... ] ) = ( <expr> [ , <expr> ... ] ) Parâmetros¶
varEspecifica o identificador da variável a ser inicializada.
exprEspecifica a expressão SQL para a variável.
Notas de uso¶
É possível definir diversas variáveis na mesma instrução.
Se você especificar expressões complexas, um warehouse virtual em execução poderá ser necessário na sessão.
O número de expressões deve corresponder ao número de variáveis a serem inicializadas.
O tamanho da cadeia de caracteres ou das variáveis binárias é limitado a 256 bytes.
O identificador (isto é, nome) para uma variável SQL é limitado a 256 caracteres.
Nomes de variáveis como
CURRENTouPUBLICsão reservados para uso futuro pelo Snowflake e não podem ser usados.
Exemplos¶
Esses dois exemplos usam constantes para definir variáveis:
SET V1 = 10; SET V2 = 'example'; Este exemplo define mais de uma variável de cada vez:
SET (V1, V2) = (10, 'example'); Este exemplo define a variável como o valor de uma expressão não trivial que usa uma consulta SQL:
SET id_threshold = (SELECT COUNT(*)/2 FROM table1); O exemplo a seguir mostra o resultado quando um comando SET avalia todas as expressões no lado direito do operador de atribuição antes de configurar a primeira expressão no lado esquerdo do operador. Observe que o valor da variável nomeada max é definido com base no valor antigo de min, não no novo valor.
SET (min, max) = (40, 70); SET (min, max) = (50, 2 * $min); SELECT $max; +------+ | $MAX | |------| | 80 | +------+