Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting
Die Funktion STRTOL
Konvertiert einen Zeichenfolgenausdruck einer Nummer der angegebenen Basis in den entsprechenden Ganzzahlwert. Der konvertierte Wert muss innerhalb des signierten 64-Bit-Bereichs liegen.
Syntax
STRTOL(num_string, base)
Argumente
- num_string
-
Zeichenfolgeausdruck einer Zahl, der konvertiert werden soll. Wenn num_string leer ist (
'') oder mit dem Null-Zeichen ('\0') beginnt, ist der konvertierte Wert0. Wenn num_string eine Spalte ist, die einen NULL-Wert enthält, gibt STRTOLNULLzurück. Die Zeichenfolge kann mit einer beliebigen Zahl von Leerzeichen beginnen, optional gefolgt von einem einzelnen Plus (+)- oder Minus (-)-Zeichen, um einen positiven oder negativen Wert anzugeben. Der Standardwert ist '+'. Wenn base16ist, kann die Zeichenfolge optional mit0xbeginnen. - base
-
INTEGERzwischen 2 und 36.
Rückgabetyp
- BIGINT
-
Wenn num_string null ist, gibt die Funktion
NULLzurück.
Beispiele
Verwenden Sie die folgenden Beispiele, um Zeichenfolgen- und Basiswertpaare in Ganzzahlen zu konvertieren.
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 | +--------+