STRTOL函數 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

STRTOL函數

將指定底數之數字的字串表達式轉換為等同的整數值。轉換的值必須在帶正負號的 64 位元範圍內。

語法

STRTOL(num_string, base)

引數

num_string

要轉換之數字的字串表達式。如果 num_string 是空的 ( '' ),或開頭為 Null 字元 ('\0'),則轉換的值為 0。如果 num_string 是包含一個NULL值的列,STRTOL則返回。NULL字串的開頭可以有任何數量的空格,後面可選擇接著單一加號 '+' 或減號 '-' 來表示正或負。預設為 '+'。如果 base16,字串可選擇以 '0x' 開頭。

base

INTEGER 介於 2 和 36 之間。

傳回類型

BIGINT

如果 num_string 為空,則函數傳回 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 | +--------+