Frage:
Ist es möglich, a Durch Kommas getrennte Zeichenfolge in eine temporäre MySQL-Tabelle unter Verwendung von Regular Ausdrücke?
Antwort:
Während MySQL keine integrierte Funktion zum Aufteilen von Zeichenfolgen hat, gibt es verschiedene Problemumgehungen. Ein Ansatz umfasst benutzerdefinierte Funktionen und Schleifenmechanismen, um die Zeichenfolge in ihre Komponenten zu zerlegen.
Benutzerdefinierte Funktion zur Zeichenfolgenaufteilung:
CREATE FUNCTION SPLIT_STR( x VARCHAR(255), delim VARCHAR(12), pos INT ) RETURNS VARCHAR(255) RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos), LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1), delim, '');
Schleife und Inkrementieren die benutzerdefinierte Funktion:
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 $$
Mit diesem Ansatz können Sie die geteilte Zeichenfolge analysieren und die Komponenten dynamisch einfügen in eine temporäre Tabelle mithilfe der Schleifenfunktionen von MySQL.
Das obige ist der detaillierte Inhalt vonKönnen reguläre Ausdrücke durch Kommas getrennte Zeichenfolgen in temporäre MySQL-Tabellen analysieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!