Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Gibt die Länge der angegebenen Zeichenfolge durch die Anzahl der Zeichen an.
Syntax
LEN ist synonym mit Die Funktion LENGTH, Die Funktion CHAR_LENGTH, Die Funktion CHARACTER_LENGTH und Die Funktion TEXTLEN.
LEN(expression)
Argument
- expression
-
Eine
CHAR
-Zeichenfolge, eineVARCHAR
-Zeichenfolge, einVARBYTE
-Ausdruck oder ein Ausdruck, die bzw. der implizit als einCHAR
-,VARCHAR
- oderVARBYTE
-Typ ausgewertet wird.
Rückgabetyp
- INTEGER
-
Die LEN-Funktion gibt eine Ganzzahl zurück, die die Anzahl der Zeichen in der Eingabezeichenfolge anzeigt.
Wenn es sich um eine Folge von Zeichen handelt, gibt die LEN-Funktion die tatsächliche Anzahl der Zeichen in Multibyte-Zeichenfolgen zurück, nicht die Anzahl der Bytes. Beispielsweise ist eine
VARCHAR(12)
-Spalte erforderlich, um drei chinesische Zeichen mit vier Bytes zu speichern. Die LEN-Funktion gibt für diese Zeichenfolge3
zurück. Verwenden Sie die Funktion OCTET_LENGTH, um die Länge einer Zeichenfolge in Bytes abzurufen.
Nutzungshinweise
Wenn Ausdruck eine CHAR
-Zeichenfolge ist, werden nachfolgende Leerzeichen nicht gezählt.
Wenn Ausdruck eine VARCHAR
-Zeichenfolge ist, werden nachfolgende Leerzeichen gezählt.
Beispiele
Verwenden Sie das folgende Beispiel, um die Anzahl der Bytes und die Anzahl der Zeichen der Zeichenfolge français
zurückzugeben.
SELECT OCTET_LENGTH('français'),
LEN('français');
+--------------+-----+
| octet_length | len |
+--------------+-----+
| 9 | 8 |
+--------------+-----+
Verwenden Sie das folgende Beispiel, um die Anzahl der Bytes und die Anzahl der Zeichen der Zeichenfolge français
zurückzugeben, ohne die Funktion OCTET_LENGTH zu nutzen. Weitere Informationen finden Sie unter CAST-Funktion.
SELECT LEN(CAST('français' AS VARBYTE)) as bytes, LEN('français');
+-------+-----+
| bytes | len |
+-------+-----+
| 9 | 8 |
+-------+-----+
Verwenden Sie das folgende Beispiel, um die Anzahl der Zeichen in folgenden Zeichenfolgen zurückzugeben: cat
ohne abschließende Leerzeichen,cat
mit drei abschließenden Leerzeichen, cat
mit drei abschließenden Leerzeichen, umgewandelt in ein CHAR
der Länge 6 und cat
mit drei abschließenden Leerzeichen, umgewandelt in ein VARCHAR
der Länge 6. Beachten Sie, dass die Funktion zwar nachfolgende Leerzeichen für CHAR
-Zeichenfolgen nicht zählt, nachgestellte Leerzeichen für VARCHAR
-Zeichenfolgen werden aber gezählt.
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 |
+-----+-----+----------+-------------+
Verwenden Sie das folgende Beispiel, um Daten aus die Tabelle VENUE in der TICKIT-Beispieldatenbank zu verwenden. Weitere Informationen finden Sie unter Beispieldatenbank.
Verwenden Sie das folgende Beispiel, um die 10 längsten Ortsnamen in der Tabelle VENUE zurückzugeben.
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 |
+-----------------------------------------+-----+