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à.
Funzione OCTET_LENGTH
Restituisce la lunghezza della stringa specificata come numero di byte.
Sintassi
OCTET_LENGTH(expression)
Argomento
- espressione
-
Una stringa
CHAR
, una stringaVARCHAR
, un'espressioneVARBYTE
o un'espressione che restituisce implicitamente un tipoCHAR
,VARCHAR
oVARBYTE
.
Tipo restituito
- INTEGER
-
La funzione OCTET_LENGTH restituisce un integer che indica il numero di byte nella stringa di input.
Se la stringa di input è una stringa di caratteri, la funzione LEN restituisce il numero effettivo di caratteri nelle stringhe multi-byte, non il numero di byte. Ad esempio, è necessaria una colonna
VARCHAR(12)
per archiviare tre caratteri cinesi a quattro byte. La funzione OCTET_LENGTH restituirà12
per quella stringa e la funzione LEN restituirà3
per la stessa stringa.
Note per l'utilizzo
Se expression è una stringa CHAR
, la funzione restituisce la lunghezza della stringa CHAR
. Ad esempio, l'output di un input CHAR(6)
è CHAR(6)
.
Se expression è una stringa VARCHAR
, gli spazi finali vengono contati.
Esempi
Per restituire il numero di byte quando la stringa francais
con tre spazi finali viene convertita in un tipo CHAR
e VARCHAR
, utilizza l'esempio seguente. Per ulteriori informazioni, consulta Funzione CAST.
SELECT OCTET_LENGTH(CAST('francais ' AS CHAR(15))) AS octet_length_char, OCTET_LENGTH(CAST('francais ' AS VARCHAR(15))) AS octet_length_varchar;
+-------------------+----------------------+ | octet_length_char | octet_length_varchar | +-------------------+----------------------+ | 15 | 11 | +-------------------+----------------------+
Per restituire il numero di byte e il numero di caratteri nella stringa français
, utilizza l'esempio seguente.
SELECT OCTET_LENGTH('français'), LEN('français');
+--------------+-----+ | octet_length | len | +--------------+-----+ | 9 | 8 | +--------------+-----+
Per restituire il numero di byte quando la stringa français
viene convertita in VARBYTE
, utilizza l'esempio seguente.
SELECT OCTET_LENGTH(CAST('français' AS VARBYTE));
+--------------+ | octet_length | +--------------+ | 9 | +--------------+