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à.
Restituisce la lunghezza della stringa specificata come numero di caratteri.
Sintassi
LEN è un sinonimo di Funzione LENGTH, Funzione CHAR_LENGTH, Funzione CHARACTER_LENGTH, e Funzione TEXTLEN.
LEN(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 LEN restituisce un integer che indica il numero di caratteri 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 LEN restituirà3
per quella stessa stringa. Per ottenere la lunghezza di una stringa in byte, utilizzare la funzione OCTET_LENGTH.
Note per l'utilizzo
Se expression è una stringa CHAR
, gli spazi finali non vengono contati.
Se expression è una stringa VARCHAR
, gli spazi finali vengono contati.
Esempi
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 e il numero di caratteri nella stringa français
senza utilizzare la funzione OCTET_LENGTH, utilizza l'esempio seguente. Per ulteriori informazioni, consulta Funzione CAST.
SELECT LEN(CAST('français' AS VARBYTE)) as bytes, LEN('français');
+-------+-----+
| bytes | len |
+-------+-----+
| 9 | 8 |
+-------+-----+
Per restituire il numero di caratteri nelle stringhe cat
senza spazi finali, cat
con tre spazi finali, cat
con conversione di tre spazi finali come CHAR
di lunghezza 6 e cat
con conversione di tre spazi finali come VARCHAR
di lunghezza 6, utilizza l'esempio seguente. Tieni presente che la funzione non conta gli spazi finali per le stringhe CHAR
, ma conta gli spazi finali per le stringhe VARCHAR
.
SELECT LEN('cat'), LEN('cat '), LEN(CAST('cat ' AS CHAR(6))) AS len_char, LEN(CAST('cat ' AS VARCHAR(6))) AS len_varchar;
+-----+-----+----------+-------------+
| len | len | len_char | len_varchar |
+-----+-----+----------+-------------+
| 3 | 6 | 3 | 6 |
+-----+-----+----------+-------------+
Nell'esempio seguente vengono utilizzati i dati della tabella VENUE database di esempio TICKIT. Per ulteriori informazioni, consulta Database di esempio.
Per restituire i dieci nomi VENUE più lunghi nella tabella VENUE, utilizza l'esempio seguente.
SELECT venuename, LEN(venuename)
FROM venue
ORDER BY 2 DESC, 1
LIMIT 10;
+-----------------------------------------+-----+
| venuename | len |
+-----------------------------------------+-----+
| Saratoga Springs Performing Arts Center | 39 |
| Lincoln Center for the Performing Arts | 38 |
| Nassau Veterans Memorial Coliseum | 33 |
| Jacksonville Municipal Stadium | 30 |
| Rangers BallPark in Arlington | 29 |
| University of Phoenix Stadium | 29 |
| Circle in the Square Theatre | 28 |
| Hubert H. Humphrey Metrodome | 28 |
| Oriole Park at Camden Yards | 27 |
| Dick's Sporting Goods Park | 26 |
+-----------------------------------------+-----+