本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將指定底數之數字的字串表達式轉換為等同的整數值。轉換的值必須在帶正負號的 64 位元範圍內。
語法
STRTOL(num_string, base)
引數
- num_string
-
要轉換之數字的字串表達式。如果 num_string 是空的 (
''
),或開頭為 Null 字元 ('\0'
),則轉換的值為0
。如果 num_string 是含有 NULL 值的欄,STRTOL 會傳回NULL
。字串的開頭可以有任何數量的空格,後面可選擇接著單一加號 '+
' 或減號 '-
' 來表示正或負。預設為 '+
'。如果 base 是16
,字串可選擇以 '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 |
+--------+