Es gibt vier wichtige MySQL-Zeichenfolgenabfangfunktionen: left(), right(), substring() und substring_index(). Jedes hat sein eigenes Nutzungsszenario. Lassen Sie mich Ihnen heute ein paar Minuten Zeit geben, um Sie mit ihnen vertraut zu machen, Mark!
1. LEFT()-FunktionLEFT(Zeichenfolge, Länge), extrahiert beginnend mit dem ersten Zeichen links von der Zeichenfolge die Längenzeichen. Die Länge sollte größer als 0 sein. Wenn <= 0, wird eine leere Zeichenfolge zurückgegeben. Hier ist ein Beispiel: mysql> SELECT LEFT('www.csdn.net',5) von web_info w; +------------------+ | LINKS('www.csdn.net',5) | +------------------+ | www.c | +------------------+ 1 Zeile im Satz (0,00 Sek.) 2. RIGHT()-FunktionLEFT(Zeichenfolge, Länge), extrahiert beginnend mit dem ersten Zeichen rechts von der Zeichenfolge die Längenzeichen, immer noch in Vorwärtsreihenfolge. Die Länge sollte größer als 0 sein. Wenn <= 0, wird eine leere Zeichenfolge zurückgegeben. mysql> RECHTS AUSWÄHLEN('www.csdn.net',5) von web_info w; +-------------------------+ | RECHTS('www.csdn.net',5) | +-------------------------+ | n.net | +-------------------------+ 1 Zeile im Satz (0,00 Sek.) 3. SUBSTRING()-Funktionsubstring() ist eine Funktion, die speziell zum Teilen eines Strings verwendet wird. Sie hat zwei Hauptformen:
Nachfolgend sehen Sie die SQL-Standardversion der beiden oben genannten Anweisungstypen, die dasselbe bedeuten. Sie ist länger, aber aussagekräftiger. SUBSTRING (Zeichenfolge von Position); SUBSTRING (Zeichenfolge VON Position FÜR Länge); Sehen wir uns zwei Beispiele für die Verwendung von SUBSTRING() an. 1.SUBSTRING(Zeichenfolge,Position)
Um beispielsweise die Teilzeichenfolge „csdn.net“ aus der Zeichenfolge „www.csdn.net“ zu erhalten, muss die Position der Teilzeichenfolge bei 5 beginnen, wie in der folgenden SELECT-Anweisung gezeigt: mysql> SELECT Teilzeichenfolge ('www.csdn.net', 5) von web_info w; +-----------------------------+ | Teilzeichenfolge('www.csdn.net',5) | +-----------------------------+ |csdn.net| +-----------------------------+ 1 Zeile im Satz (0,00 Sek.) 2.SUBSTRING(Zeichenfolge,Position,Länge) Zusätzlich zu den Zeichenfolgen- und Positionsparametern verfügt die SUBSTRING-Funktion auch über einen Längenparameter. Um beispielsweise die CSDN unter www.csdn.net abzurufen, lautet die SQL wie folgt: mysql> SELECT Teilzeichenfolge ('www.csdn.net', 5,4) von web_info w; +-------------------------------+ | Teilzeichenfolge('www.csdn.net',5,4) | +-------------------------------+ |csdn| +-------------------------------+ 1 Zeile im Satz (0,00 Sek.) Oder indem Sie die Position konfigurieren und von hinten nach vorne zählen. Das SQL lautet wie folgt: mysql> SELECT Teilzeichenfolge ('www.csdn.net', -8,4) von web_info w; +--------------------------------+ | Teilzeichenfolge('www.csdn.net',-8,4) | +--------------------------------+ |csdn| +--------------------------------+ 1 Zeile im Satz (0,00 Sek.) Oder Sie können es im Standard-SQL-Format schreiben. Das SQL lautet wie folgt: mysql> SELECT Teilzeichenfolge ('www.csdn.net' von 5 für 4) von web_info w; +----------------------------------------+ | Teilzeichenfolge ('www.csdn.net' VON 5 FÜR 4) | +----------------------------------------+ |csdn| +----------------------------------------+ 1 Zeile im Satz (0,00 Sek.) Darüber hinaus sind mid() und substr() in MySQL gleichwertig mit der Funktion substring()! 4. SUBSTRING_INDEX()-FunktionSUBSTRING_INDEX(str,delim,count) ist eine Funktion, die einen Teilstring anhand eines bestimmten Bezeichners „delim“ extrahiert. Wir verwenden sie häufig im täglichen Leben.
Beispiel: „www.csdn.net“, holen Sie sich die Teilzeichenfolge vor dem ersten Vorkommen des Bezeichners „.“, das SQL lautet wie folgt: mysql> SELECT SUBSTRING_INDEX('www.csdn.net','.',1) von web_info w; +------------------------------------------+ | SUBSTRING_INDEX('www.csdn.net','.',1) | +------------------------------------------+ | www | +------------------------------------------+ 1 Zeile im Satz (0,00 Sek.) Holen Sie sich die Teilzeichenfolge nach dem ersten Vorkommen des Bezeichners „.“. Das SQL lautet wie folgt: mysql> SELECT SUBSTRING_INDEX('www.csdn.net','.',-2) von web_info w; +----------------------------------------+ | SUBSTRING_INDEX('www.csdn.net','.',-2) | +----------------------------------------+ |csdn.net| +----------------------------------------+ 1 Zeile im Satz (0,00 Sek.) Möchten Sie die Mitte von zwei „.“ erhalten? Es kann verschachtelt werden, das SQL ist wie folgt; mysql> SELECT SUBSTRING_INDEX(substring_index('www.csdn.net','.',2),'.',-1) aus web_info w; +-------------------------------------------------------------------+ | SUBSTRING_INDEX(Teilstring_Index('www.csdn.net','.',2),'.',-1) | +-------------------------------------------------------------------+ |csdn| +-------------------------------------------------------------------+ 1 Zeile im Satz (0,00 Sek.) 5. Praktische BedienungWir verwenden die Tabelle web_info als Testtabelle und die Daten sind wie folgt: mysql> wähle * aus web_info; +------+--------+----------------+---------------------+ | w_id | w_name | w_domäne | Veröffentlichungszeit | +------+--------+----------------+---------------------+ | 1 | CSDN | www.csdn.net | 03.09.2020 11:29:29 | | 5 | Baidu | www.baidu.com | 18.09.2020 14:37:38 | | 6 | Taobao | www.taobao.com | 03.09.2020 14:37:57 | +------+--------+----------------+---------------------+ 3 Zeilen im Satz (0,00 Sek.) Anforderung 1: Holen Sie sich den First-Level-Domänennamen der Webinfo-Daten. mysql> SELECT SUBSTRING_INDEX(w_domain,'.',-2),w.* von web_info w; +----------------------------------+------+--------+----------------+---------------------+ | SUBSTRING_INDEX(w_Domäne,'.',-2) | w_ID | w_Name | w_Domäne | Veröffentlichungszeit | +----------------------------------+------+--------+----------------+---------------------+ | csdn.net | 1 | CSDN | www.csdn.net | 03.09.2020 11:29:29 | | baidu.com | 5 | Baidu | www.baidu.com | 18.09.2020 14:37:38 | | taobao.com | 6 | Taobao | www.taobao.com | 03.09.2020 14:37:57 | +----------------------------------+------+--------+----------------+---------------------+ 3 Zeilen im Satz (0,00 Sek.) Anforderung 2: Ändern Sie die Daten im Feld „w_domain“ in den Domänennamen der ersten Ebene. Webinformationen aktualisieren, w_Domain festlegen = SUBSTRING_INDEX(w_Domain,'.',-2); Geänderte Abfrage: mysql> AUSWÄHLEN * von web_info; +------+--------+------------+---------------------+ | w_id | w_name | w_domäne | Veröffentlichungszeit | +------+--------+------------+---------------------+ | 1 | CSDN | csdn.net | 03.09.2020 14:54:59 | | 5 | Baidu | baidu.com | 03.09.2020 14:54:59 | | 6 | Taobao | taobao.com | 03.09.2020 14:54:59 | +------+--------+------------+---------------------+ 3 Zeilen im Satz (0,00 Sek.) So, das war’s für heute zur String-Splitting-Funktion von MySQL. Wenn es für Sie nützlich ist, geben Sie es bitte nicht kostenlos weiter~~ Dies ist das Ende dieses Artikels über die spezifische Verwendung der MySQL-Segmentierungsfunktion substring(). Weitere relevante Inhalte zur MySQL-Segmentierungsfunktion substring finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Einfacher Webseitencode, der im NetEase-Blog verwendet wird
>>: Beispielcode einer SVG-Schaltfläche basierend auf einer CSS-Animation
Laden Sie das Nginx-Image in Docker herunter Dock...
Inhaltsverzeichnis 1. Hauptfunktionen 2. Umsetzun...
Dieser Artikel stellt hauptsächlich den Installati...
In diesem Artikelbeispiel wird der spezifische Co...
In diesem Artikel wird der spezifische Code zur I...
Wie installiere ich PHP7 unter Linux? 1. Installi...
Inhaltsverzeichnis Was ist FormData? Eine praktis...
<meta http-equiv="x-ua-kompatibel" co...
Den Ergebnissen zufolge gibt es für die Definitio...
Ich habe zuvor einen Artikel über die Dateiübertr...
1. Einleitung CentOS8-Systemupdate, die neue Vers...
Das Raspberry Pi-Modell ist 4b, 1 G RAM. Das Syst...
Überprüfen Sie zunächst, ob das Festplattengerät ...
Meta ist ein Hilfstag im Kopfbereich der HTML-Spra...
Die Verwendung von CI zum Erstellen von Docker-Im...