多くの場合、SQLでjson文字列を直接解析する必要があります。これは、mysql5.7バージョンの流域に基づく区別です。
MySQLのバージョンを確認してください。
SELECT VERSION();
mysql5.7以降の場合
MySQLの組み込み関数JSON_EXTRACT(column、 '$ .key')を使用します。この関数には2つのパラメーターがあります。最初のパラメーター列はjson列の列名を表し、2番目のパラメーターキーはjson文字列のキーを表します。
SELECT JSON_EXTRACT('{"name":"张三","age":"18"}', '$.name') AS '姓名';
输出结果:"张三"
上記の結果から、取得した出力結果には引用符が多く含まれているため、取得したコンテンツの外にある引用符( "")を削除するJSON_UNQUOTE関数の導入を検討する必要があります。
SELECT JSON_UNQUOTE(JSON_EXTRACT('{"name":"张三","age":"18"}', '$.name')) AS '姓名';
输出结果:张三
上記は通常のjson文字列形式です。jsonArrayが特定の列に格納されている場合、この時点で何をすべきですか?次に見下ろします:
例: