次のような Base64 でエンコードされた文字列があります。
eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=
そして、トランスコードされた JSON 文字列 ({"a":63,"c":298,"n":1,"s":1,"e":40,"p":4}) を解析しようとしています) を表として示します。以下は望ましい結果です:
MySQL で書かれた SQL:
SELECT JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=') USING utf8), '$."a"') a, JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=') USING utf8), '$."c"') c, JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=') USING utf8), '$."n"') n, JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=') USING utf8), '$."s"') s, JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=') USING utf8), '$."e"') e, JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=') USING utf8), '$."p"') p
難しいことは何もありません。 Base64 でエンコードされた文字列を JSON 文字列に変換し、K-V ペアに従って JSON を解析してテーブルを作成するだけです。 SQL コーディングは、特に結果テーブルの列数が不明な場合に複雑になります。
オープンソースの esProc SPL でコーディングするのは簡単です:
パラメータ arg1 の値が次であると仮定します。
eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=
SPL は、オープンソースのプロフェッショナルな構造化データ計算言語として、JSON を含むさまざまなデータ ソースの処理に便利です。
以上がBaseencode された文字列からキーと値のペアを解析する方法#eg11の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。