Heim > Datenbank > MySQL-Tutorial > Wie misst die MySQL-Funktion LENGTH() die Stringlänge?

Wie misst die MySQL-Funktion LENGTH() die Stringlänge?

WBOY
Freigeben: 2023-09-02 16:45:02
nach vorne
1498 Leute haben es durchsucht

MySQL LENGTH() 函数如何测量字符串长度?

Die MySQL LENGTH()-Funktion misst die Stringlänge in „Bytes“, was bedeutet, dass sie nicht multibytesicher ist. Der Unterschied in den Ergebnissen zwischen Multibyte-sicheren Funktionen wie CHAR_LENGTH() oder CHARACTER_LENGTH() und der Funktion LENGTH() ist besonders relevant für Unicode, wo die meisten Zeichen in zwei Bytes kodiert sind, oder für UTF-8. Die Anzahl der Bytes variiert . Wenn die Zeichenfolge beispielsweise vier 2-Byte-Zeichen enthält, gibt die Funktion LENGTH() 8 zurück und die Funktion CHAR_LENGTH() oder CHARACTER_LENGTH() gibt 4 zurück. Wie im Beispiel unten gezeigt -

Beispiel

mysql> Select LENGTH('tutorialspoint');
+--------------------------+
| LENGTH('tutorialspoint') |
+--------------------------+
|                       14 |
+--------------------------+
1 row in set (0.00 sec)
Nach dem Login kopieren

Die obige Ergebnismenge zeigt, dass die Länge der Zeichenfolge „tutorialspoint“ 14 beträgt, da sie nicht in Unicode-Zeichen konvertiert wurde. Die folgende Abfrage konvertiert es in Unicode-Zeichen –

mysql> SET @A = CONVERT('tutorialspoint' USING ucs2);
Query OK, 0 rows affected (0.02 sec)
Nach dem Login kopieren

Nach der Konvertierung der Zeichenfolge in Unicode ist das Ergebnis 28 statt 14, da in Unicode ein einzelnes Zeichen 2 Bytes benötigt, wie unten gezeigt –

mysql> Select LENGTH(@A);
+------------+
| LENGTH(@A) |
+------------+
|         28 |
+------------+
1 row in set (0.00 sec)
Nach dem Login kopieren

Aber CHAR_LENGTH() Das angegebene Ergebnis ist 14, da es sich um eine Multibyte-sichere Funktion handelt, wie unten gezeigt -

mysql> Select CHAR_LENGTH(@A);
+-----------------+
| CHAR_LENGTH(@A) |
+-----------------+
|              14 |
+-----------------+
1 row in set (0.00 sec)
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie misst die MySQL-Funktion LENGTH() die Stringlänge?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage