MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む
このページは機械翻訳したものです。
このセクションにリストされている関数は、コンポーネント要素から JSON 値を構成します。
JSON_ARRAY([
val
[, val
] ...])
値リスト (空の場合もある) を評価し、それらの値を含む JSON 配列を返します。
mysql> SELECT JSON_ARRAY(1, "abc", NULL, TRUE, CURTIME());
+---------------------------------------------+
| JSON_ARRAY(1, "abc", NULL, TRUE, CURTIME()) |
+---------------------------------------------+
| [1, "abc", null, true, "11:30:24.000000"] |
+---------------------------------------------+
JSON_OBJECT([
key
, val
[, key
, val
] ...])
キーと値のペアの (空の可能性がある) リストを評価し、それらのペアを含む JSON オブジェクトを返します。 いずれかのキー名が NULL
であるか、引数の数が奇数の場合、エラーが発生します。
mysql> SELECT JSON_OBJECT('id', 87, 'name', 'carrot');
+-----------------------------------------+
| JSON_OBJECT('id', 87, 'name', 'carrot') |
+-----------------------------------------+
| {"id": 87, "name": "carrot"} |
+-----------------------------------------+
JSON_QUOTE(
string
)
文字列を二重引用符で囲み、内部引用符やその他の文字をエスケープして JSON 値として引用符で囲み、結果を utf8mb4
文字列として返します。 引数が NULL
の場合、NULL
を返します。
この関数は通常、JSON ドキュメントに含める有効な JSON 文字列リテラルを生成するために使用されます。
特定の特殊文字は、表12.23「JSON_UNQUOTE() 特殊文字エスケープシーケンス」 に示されているエスケープシーケンスごとにバックスラッシュでエスケープされます。
mysql>SELECT JSON_QUOTE('null'), JSON_QUOTE('"null"');
+--------------------+----------------------+ | JSON_QUOTE('null') | JSON_QUOTE('"null"') | +--------------------+----------------------+ | "null" | "\"null\"" | +--------------------+----------------------+ mysql>SELECT JSON_QUOTE('[1, 2, 3]');
+-------------------------+ | JSON_QUOTE('[1, 2, 3]') | +-------------------------+ | "[1, 2, 3]" | +-------------------------+
CAST(
を使用して他の型の値を value
AS JSON)JSON
型にキャストすることで、JSON 値を取得することもできます。詳細は、JSON 値と非 JSON 値の間の変換 を参照してください。
JSON 値を生成する 2 つの集計関数を使用できます。 JSON_ARRAYAGG()
は結果セットを単一の JSON 配列として返し、JSON_OBJECTAGG()
は結果セットを単一の JSON オブジェクトとして返します。 詳細は、セクション12.20「集計関数」を参照してください。