VorwortHinweis: Die Testdatenbankversion ist MySQL 8.0 Testdaten: Tabelle erstellen zqs(id int,str varchar(1000)); in zqs(id,str) Werte einfügen (1,'【JD.com】abc【China Telecom】'); in zqs(id,str) Werte einfügen (1,'【JD.com】abc【China Telecom】def'); in zqs(id,str) Werte einfügen (1, '****【JD.com】abc【China Telecom】def'); in zqs(id,str) Werte einfügen (1,'****【JD.com】abc'); in zqs(id,str) Werte einfügen (1, '【JD.com】abc【China Telecom】【China Unicom】'); 1. NachfrageWir stoßen häufig auf ähnliche Anforderungen wie bei SMS und müssen SMS-Tag-Informationen extrahieren, es können jedoch mehrere SMS-Tags vorhanden sein. Dieses Beispiel geht davon aus, dass höchstens 3 Tags vorhanden sind und soll wie folgt ausgegeben werden: mysql> wähle * aus zqs; ±-----±----------------------------------------------------+ | Ich würde | str | ±-----±----------------------------------------------------+ | 1 | 【JD.com】abc【China Telecom】 | | 1 | 【JD.com】abc【China Telecom】def | | 1 | ****【JD.com】abc【China Telecom】def | | 1 | ****【JD.com】abc | | 1 | 【JD.com】abc【China Telecom】【China Unicom】 | ±-----±----------------------------------------------------+ Die erforderliche Ausgabe ist wie folgt: ±--------------±--------------------±--------------------+ | erster_Wert | erster_Wert2 | erster_Wert3 | ±--------------±--------------------±--------------------+ | 【JD.com】 | 【China Telecom】 | | | 【JD.com】 | 【China Telecom】 | | | 【JD.com】 | 【China Telecom】 | | | 【JD.com】 | | | | 【JD.com】 | 【China Telecom】 | 【China Unicom】 | ±--------------±--------------------±--------------------+ 2. LösungDie Zeichenfolgenabfangfunktionen substr und instr von Oracle können zusammen verwendet werden, allerdings ist die instr-Funktion von MySQL schwächer als die instr-Funktion von Oracle. Zu diesem Zeitpunkt müssen Sie die MySQL-regulären Ausdrücke regexp_instr und substr verwenden. wähle Teilstrich(strich, regexp_instr(str,'【',1,1), regexp_instr(str,'】',1,1) - regexp_instr(str,'【',1,1) + 1 ) erster_Wert, substr(str, regexp_instr(str,'【',1,2), regexp_instr(str,'】',1,2) - regexp_instr(str,'【',1,2) + 1) first_va2, substr(str, regexp_instr(str,'【',1,3), regexp_instr(str,'】',1,3) - regexp_instr(str,'【',1,3) + 1) first_va3 von zqs; Testprotokoll: mysql> wähle Teilzeichen (Zeichenfolge, -> regexp_instr(str,'【',1,1), -> regexp_instr(str,'】',1,1) - regexp_instr(str,'【',1,1) + 1 ) erster_Wert, -> substr(str, -> regexp_instr(str,'【',1,2), -> regexp_instr(str,'】',1,2) - regexp_instr(str,'【',1,2) + 1) first_va2, -> substr(str, -> regexp_instr(str,'【',1,3), -> regexp_instr(str,'】',1,3) - regexp_instr(str,'【',1,3) + 1) first_va3 -> von zqs; +--------------+--------------------+--------------------+ | erster_Wert | erster_Wert2 | erster_Wert3 | +--------------+--------------------+--------------------+ | 【JD.com】 | 【China Telecom】 | | | 【JD.com】 | 【China Telecom】 | | | 【JD.com】 | 【China Telecom】 | | | 【JD.com】 | | | | 【JD.com】 | 【China Telecom】 | 【China Unicom】 | +--------------+--------------------+--------------------+ 5 Zeilen im Satz (0,00 Sek.) ZusammenfassenDies ist das Ende dieses Artikels zum Extrahieren von Zeichenfolgenelementen aus nicht festgelegten Positionen in MySQL. Weitere Informationen zum Extrahieren von Zeichenfolgenelementen aus MySQL finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! |
<<: Vue implementiert einen einfachen Laufschrifteffekt
>>: Beispielcode zur Implementierung der Ellipsenbahnrotation mit CSS3
Beim Erstellen eines Tomcat-Servers auf einem lok...
Ubuntu ist ein relativ beliebtes Linux-Desktopsys...
Fügen Sie der Webseite ein HTML-Steuerelement für...
Der MySQL-Dienst wird gestartet, aber es kann kei...
In diesem Artikel werden die Schwierigkeiten und ...
Stellungnahme : In diesem Artikel erfahren Sie, w...
So ändern Sie den Bild-Hyperlink, wenn Sie mit der...
1.core-Datei Wenn während der Programmausführung ...
Dieses Mal werden wir versuchen, den laufenden Co...
Inhaltsverzeichnis 1 Begriffliche Abgrenzung 2 Fa...
Das Problem, dass MYSQL5.7.17 unter MAC keine Ver...
Vier praktische Vue-Custom-Anweisungen 1. V-Wider...
In diesem Artikelbeispiel wird der spezifische Co...
Was sind die Lebenszyklusfunktionen von React-Kom...
1. Laden Sie das Ubuntu16.04-Image und den entspr...