O Amazon Redshift não permitirá mais a criação de funções definidas pelo usuário (UDFs) do Python a partir de 1.º de novembro de 2025. Se quiser usar UDFs do Python, você deve criá-las antes dessa data. As UDFs do Python existentes continuarão a funcionar normalmente. Para ter mais informações, consulte a publicação de blog
Função STRTOL
Converte a expressão de string de um número da base especificada ao valor inteiro equivalente. O valor convertido deve estar dentro do intervalo de 64 bits assinado.
Sintaxe
STRTOL(num_string, base)
Argumentos
- num_string
-
Expressão de string de um número a ser convertido. Se num_string estiver vazia (
'') ou começar com o caractere nulo ('\0'), o valor convertido será0. Se num_string for uma coluna que contém um valor NULL, STRTOL retornaráNULL. A string pode começar com qualquer quantidade de espaços em branco seguida, opcionalmente seguida por um sinal de mais ''+" ou menos ''-" para indicar positivo ou negativo. O padrão é “”. '+'. Se base for16, a string pode opcionalmente começar com "0x". - base
-
INTEGERentre 2 e 36.
Tipo de retorno
- BIGINT
-
Se num_string for nulo, a função retornará
NULL.
Exemplos
Para converter pares de valores de string e base para números inteiros, use os exemplos a seguir.
SELECT STRTOL('0xf',16);+--------+ | strtol | +--------+ | 15 | +--------+SELECT STRTOL('abcd1234',16);+------------+ | strtol | +------------+ | 2882343476 | +------------+SELECT STRTOL('1234567', 10);+---------+ | strtol | +---------+ | 1234567 | +---------+SELECT STRTOL('1234567', 8);+--------+ | strtol | +--------+ | 342391 | +--------+SELECT STRTOL('110101', 2);+--------+ | strtol | +--------+ | 53 | +--------+SELECT STRTOL('\0', 2);+--------+ | strtol | +--------+ | 0 | +--------+