Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Teilen Sie Daten in mysql in Spalten auf

Sie können eine benutzerdefinierte MySQL-Funktion namens benutzerdefinierte Funktion schreiben die den Variablennamen und den zu suchenden Wert erhalten und dann die Zeile oder ID usw. nach Bedarf zurückgeben kann.

In dieser Funktion müssen Sie alle Zeilen in einem schreibgeschützten Cursor durchlaufen und SUBSTRING_INDEX() um die Werte separat zu erhalten und auf Übereinstimmung zu prüfen.

Wenn Sie weitere Hilfe benötigen, lassen Sie es mich wissen.

Weitere Informationen finden Sie im MySQL-Handbuch für String-Funktionen hier .

Ein Auszug aus einem Benutzerkommentar aus dem obigen Link, der Ihnen beim Schreiben der Funktion helfen könnte:Dadurch wird eine IP-Adresse ("a.b.c.d") in 4 jeweilige Oktette aufgeteilt:

SELECT
`ip` , 
SUBSTRING_INDEX( `ip` , '.', 1 ) AS a,
SUBSTRING_INDEX(SUBSTRING_INDEX( `ip` , '.', 2 ),'.',-1) AS b, 
SUBSTRING_INDEX(SUBSTRING_INDEX( `ip` , '.', -2 ),'.',1) AS c,
SUBSTRING_INDEX( `ip` , '.', -1 ) AS d
FROM log_table