説明
この関数は、JSON値を指定された書式で出力します。PHPなどに似ています。
構文
JSON_PRETTY(json_val)
説明
パラメータ json_val は、JSON値またはその有効な文字列表現である必要があります。この値に含まれる不要な空白や改行文字は、出力に影響しません。値がJSONドキュメントではない場合、または解析できない場合、この関数は失敗し、エラーが表示されます。
NULL 値に対して、この関数は NULL を返します。
この関数の出力形式は、以下のルールに従います:
各配列要素またはオブジェクトメンバーは、親要素より1段階インデントされた別々の行に表示されます。
各インデントレベルでは、2つの先行スペースが追加されます。
単一の配列要素またはオブジェクトメンバーを区切るカンマは、2つの要素またはメンバーを区切る改行文字の前に出力されます。
オブジェクトメンバーのキーと値は、コロン(:)の後にスペース(' ')を付けて区切られます。
空のオブジェクトや配列は1行に出力されます。左括弧と右括弧の間にはスペースを出力しません。
文字列スカラーやキー名に含まれる特殊文字は、JSON_QUOTE() 関数と同じエスケープ規則を使用します。
例
obclient> SELECT JSON_PRETTY('1234');
+--------------------+
| JSON_PRETTY('1234') |
+--------------------+
| 1234 |
+--------------------+
1 row in set
obclient> SELECT JSON_PRETTY("[1,3,5,7]");
+--------------------------+
| JSON_PRETTY("[1,3,5,7]") |
+--------------------------+
| [
1,
3,
5,
7
] |
+--------------------------+
1 row in set
obclient> SELECT JSON_PRETTY('{"a":"10","b":"20","c":"30"}');
+---------------------------------------------+
| JSON_PRETTY('{"a":"10","b":"20","c":"30"}') |
+---------------------------------------------+
| {
"a": "10",
"b": "20",
"c": "30"
} |
+---------------------------------------------+
1 row in set