Die Funktion STRTOL - Amazon Redshift

Amazon Redshift wird UDFs ab dem 1. November 2025 die Erstellung von neuem Python nicht mehr unterstützen. Wenn Sie Python verwenden möchten UDFs, erstellen Sie das UDFs vor diesem Datum liegende. Bestehendes Python UDFs wird weiterhin wie gewohnt funktionieren. Weitere Informationen finden Sie im Blogbeitrag.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

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 Wert 0. Wenn num_string eine Spalte ist, die einen NULL-Wert enthält, gibt STRTOL NULL zurü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 base 16 ist, kann die Zeichenfolge optional mit 0x beginnen.

base

INTEGER zwischen 2 und 36.

Rückgabetyp

BIGINT

Wenn num_string null ist, gibt die Funktion NULL zurü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 | +--------+