Um einen String in ein Array aufzuteilen, müssen Sie drei MySQL-Funktionen verwenden: REVERSE(str) Gibt die Zeichenfolge str mit umgekehrter Zeichenreihenfolge zurück. Gibt die Teilzeichenfolge der Zeichenfolge str nach dem count-ten Vorkommen des Trennzeichens delim zurück. Wenn die Anzahl positiv ist, werden alle Zeichen vom letzten Trennzeichen nach links zurückgegeben (von links gezählt). Wenn die Anzahl negativ ist, werden alle Zeichen vom letzten Trennzeichen nach rechts zurückgegeben (von rechts gezählt). Gibt die Zeichenfolge str zurück, wobei alle Vorkommen der Zeichenfolge from_str durch die Zeichenfolge to_str ersetzt sind. Die Funktion zum Aufteilen eines Strings in ein Array wird durch die Kombination von drei Funktionen erreicht. Schreiben Sie zunächst zwei Funktionen 1. Ermitteln Sie die Anzahl aller durch "ein bestimmtes Symbol" getrennten Zeichenfolgen. Der Funktionsinhalt lautet wie folgt (Kopieren Sie den SQL-Code und führen Sie ihn in Navicat aus) TRENNUNGSZEICHEN $$ DEFINER ERSTELLEN=`root`@`%` FUNKTION `func_get_split_string_total`( f_Zeichenfolge varchar(1000),f_Trennzeichen varchar(5) ) gibt int(11) zurück. BEGINNEN -- Holen Sie sich die Gesamtzahl der angegebenen Zeichenfolge. gibt 1+(Länge(f_string) - Länge(ersetzen(f_string,f_delimiter,''))); zurück ENDE$$ TRENNUNGSZEICHEN ; 2. Extrahieren Sie die Zeichenfolge durch Segmentierung (Kopieren Sie den SQL-Code und führen Sie ihn in Navicat aus) TRENNUNGSZEICHEN $$ DEFINER ERSTELLEN=`root`@`%` FUNKTION `func_get_split_string`( f_string varchar(1000),f_delimiter varchar(5),f_order int) gibt varchar(255) CHARSET utf8 zurück BEGINNEN - Holen Sie sich die getrennte Nummer der angegebenen Zeichenfolge. Deklariere das Ergebnis varchar(255) als Standard ''; Ergebnis festlegen = umgekehrt (Teilstring_index (umgekehrt (Teilstring_index (f_string, f_delimiter, f_order)), f_delimiter, 1)); Ergebnis zurückgeben; ENDE$$ TRENNUNGSZEICHEN ; Schreiben Sie dann eine gespeicherte Prozedur, um diese beiden Funktionen zu kombinieren, geben Sie die zu teilende Zeichenfolge und das Trennzeichen ein und geben Sie das Array aus, nachdem es durch ein bestimmtes Symbol geteilt wurde (Kopieren Sie den SQL-Code und führen Sie ihn in Navicat aus) TRENNUNGSZEICHEN $$ PROZEDUR ERSTELLEN `sp_print_result`( IN f_string varchar(1000), IN f_delimiter varchar(5) ) BEGINNEN - Holen Sie sich die getrennte Zeichenfolge. Deklarieren Sie cnt int als Standard 0; deklariere i als int default 0; setze Anzahl = func_get_split_string_total(f_string,f_delimiter); Tabelle löschen, falls vorhanden, tmp_print; Erstellen Sie eine temporäre Tabelle tmp_print (Num Int ungleich Null). während ich < cnt Tun setze i = i + 1; in tmp_print(num) Werte einfügen (func_get_split_string(f_string,f_delimiter,i)); Ende während; wähle * aus tmp_print; ENDE$$ TRENNUNGSZEICHEN ; Geben Sie dann eine zu testende Zeichenfolge ein. Die Ergebnisse sind wie folgt Die Lösung lautet wie folgt: Ausführen: Ausführen: Dadurch wird das Problem gelöst. Lassen Sie uns abschließend über gespeicherte Prozeduren und MySQL-Funktionen sprechen Eine gespeicherte Prozedur ist eine Sammlung benutzerdefinierter SQL-Anweisungen, die Aufgaben für bestimmte Tabellen oder andere Objekte beinhalten. Benutzer können gespeicherte Prozeduren aufrufen, während Funktionen normalerweise von der Datenbank definierte Methoden sind, die Parameter empfangen und einen bestimmten Werttyp zurückgeben und keine bestimmten Benutzertabellen beinhalten. Es gibt mehrere Unterschiede zwischen gespeicherten Prozeduren und Funktionen: 1) Im Allgemeinen sind die von gespeicherten Prozeduren implementierten Funktionen komplexer, während die von Funktionen implementierten Funktionen zielgerichteter sind. Gespeicherte Prozeduren sind leistungsstark und können eine Reihe von Datenbankoperationen ausführen, einschließlich der Änderung von Tabellen. Benutzerdefinierte Funktionen können nicht verwendet werden, um eine Reihe von Operationen auszuführen, die den globalen Datenbankstatus ändern. 2) Gespeicherte Prozeduren können Parameter wie Recordsets zurückgeben, während Funktionen nur Werte oder Tabellenobjekte zurückgeben können. Eine Funktion kann nur eine Variable zurückgeben; eine gespeicherte Prozedur kann mehrere zurückgeben. Die Parameter einer gespeicherten Prozedur können drei Typen haben: IN, OUT und INOUT, während eine Funktion nur vom Typ IN sein kann. Eine gespeicherte Prozedur erfordert bei der Deklaration keinen Rückgabetyp, eine Funktion muss jedoch bei der Deklaration den Rückgabetyp beschreiben und der Funktionskörper muss eine gültige RETURN-Anweisung enthalten. 3) Gespeicherte Prozeduren können nicht-deterministische Funktionen verwenden, aber nicht-deterministische Funktionen können nicht in den Hauptteil einer benutzerdefinierten Funktion eingebaut werden. 4) Eine gespeicherte Prozedur wird im Allgemeinen als unabhängiger Teil ausgeführt (Ausführung durch EXECUTE-Anweisung), während eine Funktion als Teil einer Abfrageanweisung aufgerufen werden kann (SELECT-Aufruf). Da eine Funktion ein Tabellenobjekt zurückgeben kann, kann sie in einer Abfrageanweisung nach dem Schlüsselwort FROM stehen. Gespeicherte Prozeduren sind in SQL-Anweisungen nicht verfügbar, aber Funktionen können verwendet werden. Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: Sicherheitskonfigurationsstrategie für CentOS-Server
>>: Warum TypeScripts Enum problematisch ist
Wirkung Die Bilder im Code können selbst geändert...
Einführung Unser Unternehmen ist an der Forschung...
Schritt 1: Holen Sie sich die MySQL YUM-Quelle Ge...
Inhaltsverzeichnis Installieren Sie zuerst wget H...
In diesem Artikel wird der spezifische JS-Code zu...
Wenn es um eine Remotedesktopverbindung zu Linux ...
1. Zuerst erstellen wir eine JSON-Datei zur inter...
In diesem Artikel wird hauptsächlich die Vollbild...
Vorwort Es wird gesagt, dass sich die für Betrieb...
Die Datenintegrität wird in Entitätsintegrität, D...
Manchmal kommt es in einem Projekt aus irreversib...
Vue-Gerüst -> vue.cli Erstellen Sie schnell ei...
In diesem Artikelbeispiel wird der spezifische Co...
1. MySQL herunterladen 1. Melden Sie sich auf der...
Ich werde meinen ersten Versuch mit vue3.0 aufzei...