Mysql String Länge Funktion

Mysql String Länge Funktion
MySQL bietet uns eine Sammlung von Tools und integrierten Funktionen zur Manipulation verschiedener Datentypen und Datensätze in einer Datenbank. Einige häufige und nützliche Funktionen sind String -Funktionen und Operatoren.

In diesem Tutorial werden wir uns ansehen, wie Sie vordefinierte MySQL-Funktionen verwenden, um die Länge einer Zeichenfolge zu bestimmen.

Die Grundlagen

Ohne tief in Charakter -Sets eintauchen, unterstützt MySQL eine große Auswahl von Zeichensätzen. Jedes Zeichensatz enthält eine maximale Länge von Bytes, die es pro Charakter speichern kann.

Um mehr über das unterstützte Zeichensatz und ihre maximale Länge zu erfahren, verwenden Sie die unten angegebene Ressource:

https: // dev.Mysql.com/doc/refman/8.0/en/charset-char Sets.html

In MySQL kann sich eine Zeichenfolge in jedem der unterstützten Zeichensätze befinden. Um die Länge einer Zeichenfolge zu bestimmen, können Sie die Bytes -Methode oder die Zeichenmethode verwenden.

Die Bytes -Methode gibt die Länge der angegebenen Zeichenfolge in Bytes zurück. Wenn eine Zeichenfolge einen Satz von 1-Byte-Zeichen enthält, entspricht die Länge der Zeichenfolge der Anzahl der Zeichen.

Wenn die angegebene Zeichenfolge jedoch Multi-Byte-Zeichen enthält, entspricht die Anzahl der Zeichen nicht der Länge der Zeichenfolge.

Verwenden Sie mySQL charakter_length ()

Um die Länge einer Zeichenfolge in Zeichen zu erhalten, können Sie die Funktion charakter_length () verwenden. Diese Funktion ist ein Synonym der Funktion char_length (). Es funktioniert, indem es die Anzahl der Zeichen in einer Zeichenfolge zählt, unabhängig davon, ob es sich um einen Einzelbyte- oder Multi-Byte-Zeichen handelt.

Nehmen wir die Landtabelle in der Sakila -Datenbank ein. Um die Länge der Ländernamen -Saiten zu erhalten, können wir eine Abfrage verwenden wie:

Wählen Sie Land, char_length (Land) als Länge
Vom Land
Bestellung nach Länge
Grenze 10;

Die obige Abfrage sollte die Länge der Ländernamen zurückgeben.

Verwenden Sie MySQL Länge ()

Um die Länge einer Zeichenfolge in Bytes zu erhalten, verwenden wir die Länge () -Funktion. In diesem Fall berücksichtigt die Funktion, ob es sich um einen Einzelbyte- oder Multi-Byte-Zeichen handelt.

Wir können das obige Beispiel anwenden, wie in der folgenden Abfrage gezeigt:

Wählen Sie Land, Länge (Land) als Länge
Vom Land
Bestellung nach Länge
Grenze 10;

In diesem Beispiel befinden sich die Werte in Bytes anstelle von Zeichen. Da die obigen Beispiele Einzelbyte-Zeichen verwenden, können Sie den Unterschied möglicherweise nicht bemerken.

Bei einem Multi-Byte-Charakter als Kanji-Wert für das Land sind die Werte jedoch unterschiedlich.

Betrachten Sie die folgende Abfrage:

Wählen Sie char_length ('国') als Länge_in_char;

Sobald wir die obige Abfrage ausgeführt haben, sollten wir die Länge als 1 erhalten.

+----------------+
| Länge_in_char |
+----------------+
| 1 |
+----------------+

Betrachten Sie die gleiche Abfrage unter Verwendung der Länge () -Funktion.

Wählen Sie Länge ('国') als Länge_in_Bytes;

In diesem Fall beträgt die Länge 3.

+-----------------+
| Länge_in_Bytes |
+-----------------+
| 3 |
+-----------------+

Abschluss

Diese Anleitung hat Ihnen gezeigt, wie Sie die integrierten MySQL-Funktionen verwenden, um die Länge einer Zeichenfolge in Bytes und Zeichen zu erhalten.

Vielen Dank für das Lesen!