Konvertieren von JSON-Arrays in Zeilen in MySQL
In MySQL 5.7 wurde die JSON-Manipulation erheblich verbessert und bietet vielfältige Funktionen zum Extrahieren und Verarbeiten von Daten innerhalb von JSON-Strukturen. Der umgekehrte Vorgang der Konvertierung eines JSON-Arrays in Zeilen war jedoch nicht einfach.
JSON-Array in Zeilen
Zum Einfügen einer Zeile für jedes Element in einem JSON-Array Bisher war ein manueller Ansatz mit mehreren JSON_EXTRACT()-Abfragen erforderlich. Aber mit der Einführung der JSON_TABLE-Funktion in MySQL 8 wurde dieser Prozess rationalisiert:
SELECT * FROM JSON_TABLE([5, 6, 7], '$[*]' COLUMNS( Value INT PATH '$' ));
JSON-Array in durch Kommas getrennte Zeichenfolge
Um a Um ein JSON-Array mithilfe von GROUP_CONCAT() in eine durch Kommas getrennte Zeichenfolge umzuwandeln, kann es ein Trick sein eingesetzt:
set @delimited = 'a,b,c'; SELECT * FROM JSON_TABLE( CONCAT('["', REPLACE(@delimited, ',', '", "'), '"]'), '$[*]' COLUMNS( Value varchar(50) PATH '$' ) );
Dieser Ansatz behandelt die durch Trennzeichen getrennte Zeichenfolge als JSON-Zeichenfolge, was zu einer konvertierten durch Kommas getrennten Zeichenfolge führt.
Fehlende STRING_SPLIT-Funktion
Während MySQL keine dedizierte STRING_SPLIT()-Funktion hat, kann die JSON_TABLE-Funktion als Ersatz für Split dienen Operationen, die eine durch Trennzeichen getrennte Zeichenfolge effektiv in ihre Komponenten zerlegen.
Das obige ist der detaillierte Inhalt vonWie kann ich JSON-Arrays in MySQL effizient in Zeilen konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!