MySQL で JSON 配列を行に変換する
MySQL 5.7 では、JSON 操作が大幅に強化され、データの抽出と処理のための多様な機能が提供されています。 JSON 構造内。ただし、JSON 配列を行に変換する逆の操作は簡単ではありません。
JSON 配列を行に変換
JSON 配列の各要素に行を挿入するには、以前は複数の JSON_EXTRACT() クエリを使用する手動のアプローチが必要でした。しかし、MySQL 8 の JSON_TABLE 関数の導入により、このプロセスはより合理化されました。
SELECT * FROM JSON_TABLE([5, 6, 7], '$[*]' COLUMNS( Value INT PATH '$' ));
JSON 配列をカンマ区切り文字列に変換
GROUP_CONCAT() を使用して JSON 配列をカンマ区切りの文字列に変換するには、次のようなトリックがあります。採用:
set @delimited = 'a,b,c'; SELECT * FROM JSON_TABLE( CONCAT('["', REPLACE(@delimited, ',', '", "'), '"]'), '$[*]' COLUMNS( Value varchar(50) PATH '$' ) );
このアプローチは区切り文字列を JSON 文字列として扱い、変換されたカンマ区切り文字列になります。
STRING_SPLIT 関数がありません
MySQL には専用の STRING_SPLIT() 関数がありませんが、JSON_TABLE 関数は次の役割を果たします。分割操作の代わりに、区切り文字で区切られた文字列をコンポーネントに効果的に分割します。
以上がJSON 配列を MySQL の行に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。