Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Converte un'espressione di stringa di un numero della base specificata nel valore intero equivalente. Il valore convertito deve essere compreso nell'intervallo 64-bit firmato.
Sintassi
STRTOL(num_string, base)
Argomenti
- num_string
-
Espressione di stringa di un numero da convertire. Se num_string è vuoto (
''
) o inizia con il carattere null ('\0'
), il valore convertito è0
. Se num_string è una colonna contenente un valore NULL, STRTOL restituisceNULL
. La stringa può iniziare con qualsiasi quantità di spazio bianco, opzionalmente seguita da un singolo segno più '+
' o meno '-
' per indicare il positivo o il negativo. Il valore di default è '+
'. Se base è16
, la stringa può opzionalmente iniziare con '0x
'. - base
-
INTEGER
tra 2 e 36.
Tipo restituito
- BIGINT
-
Se num_string è null, la funzione restituisce
NULL
.
Esempi
Per convertire le coppie di valori di stringa e di base in numeri interi, utilizza l'esempio seguente.
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 |
+--------+