Amazon Redshift は、2025 年 11 月 1 日以降、新しい Python UDF の作成をサポートしなくなります。Python UDF を使用する場合は、その日付より前に UDF を作成してください。既存の Python UDF は引き続き通常どおり機能します。詳細については、ブログ記事
STRTOL 関数
基数が指定された数の文字列式を、相当する整数値に変換します。変換後の値は、符号付き 64 ビットの範囲内である必要があります。
構文
STRTOL(num_string, base)
引数
- num_string
-
変換する数値の文字列式。num_string が空 (
'') であるか、null 文字 ('\0') で始まる場合、変換後の値は0になります。num_string が NULL 値を含む列である場合、STRTOL はNULLを返します。文字列の冒頭は任意の数の空白があっても構わず、オプションで正符号 '+' または負符号 '-' 1 個を後ろに付加して正または負を示すことができます。デフォルトは '+' です。base が16の場合、オプションで文字列の冒頭に '0x' を使用できます。 - base
-
2~36 の
INTEGER。
戻り型
- BIGINT
-
num_string が null の場合、この関数は
NULLを返します。
例
文字列と基数のペアを整数に変換するには、次の例を使用します。
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 | +--------+