Heim >Datenbank >MySQL-Tutorial >Kann MySQL durch Kommas getrennte Zeichenfolgen in eine temporäre Tabelle aufteilen?
Kann MySQL durch Kommas getrennte Zeichenfolgen in eine temporäre Tabelle aufteilen?
Das Aufteilen von durch Kommas getrennten Zeichenfolgen in eine temporäre Tabelle ist eine häufige Aufgabe bei der Datenbearbeitung . Obwohl MySQL für diese Aufgabe keine integrierte Funktion hat, kann sie mit alternativen Methoden erreicht werden.
Ein Ansatz besteht darin, eine benutzerdefinierte Funktion zu erstellen, die die Zeichenfolgenaufteilung implementiert. Zu diesem Zweck kann die Funktion SPLIT_STR aus der bereitgestellten Antwort verwendet werden. Es extrahiert iterativ Teilzeichenfolgen basierend auf einem Trennzeichen und einer Position und gibt eine leere Zeichenfolge zurück, wenn keine Übereinstimmung gefunden wird.
Um über die geteilte Zeichenfolge zu iterieren und eine temporäre Tabelle zu füllen, kann eine Schleife verwendet werden. Eine FOR-Schleife kann verwendet werden, um die SPLIT_STR-Funktion inkrementell aufzurufen, und die Ergebnisse können mithilfe von INSERT-Abfragen in die temporäre Tabelle eingefügt werden.
Es ist jedoch wichtig zu beachten, dass dieser Ansatz benutzerdefinierte Codierung und Kenntnisse der MySQL-Schleife erfordert Syntax. Eine alternative Lösung wäre die Verwendung einer Skriptsprache wie PHP oder Python, um die Zeichenfolgenaufteilung durchzuführen und die Ergebnisse in die temporäre Tabelle einzufügen.
Hier ist der Code für eine MySQL-Schleife, die die geteilte Zeichenfolge durchläuft und einfügt Werte in eine temporäre Tabelle:
DELIMITER $$ CREATE PROCEDURE ABC(fullstr) BEGIN DECLARE a INT Default 0 ; DECLARE str VARCHAR(255); simple_loop: LOOP SET a=a+1; SET str=SPLIT_STR(fullstr,"|",a); IF str='' THEN LEAVE simple_loop; END IF; #Do Inserts into temp table here with str going into the row insert into my_temp_table values (str); END LOOP simple_loop; END $$
Das obige ist der detaillierte Inhalt vonKann MySQL durch Kommas getrennte Zeichenfolgen in eine temporäre Tabelle aufteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!