説明
この関数は、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