に最終更新
JSON_EXTRACT_ISNULL
説明
JSON_EXTRACT_ISNULL は、JSON オブジェクト内で <json_path> が指す値が null かどうかを判定します。
構文
JSON_EXTRACT_ISNULL(<json_object>, <json_path>)
パラメータ
| パラメータ | 説明 |
|---|---|
<json_object> | 抽出元の JSON 型の値。 |
<json_path> | 抽出する要素を指定する文字列型の JSON パス。 |
戻り値
Nullable(BOOL) を返します。指定した値が null の場合は true、null でない場合は false です。入力が NULL の場合やパスが存在しない場合は NULL を返します。
使用上の注意
<json_object>または<json_path>が NULL の場合は NULL を返します。<json_path>が指す要素が存在しない場合は NULL を返します。<json_path>が指す値が null でない場合は false を返します。
例
-
通常の使用例
SELECT json_extract_isnull('{"id": 123, "name": "doris"}', '$.id');+-------------------------------------------------------------+
| json_extract_isnull('{"id": 123, "name": "doris"}', '$.id') |
+-------------------------------------------------------------+
| 0 |
+-------------------------------------------------------------+SELECT json_extract_isnull('{"id": null, "name": "doris"}', '$.id');+--------------------------------------------------------------+
| json_extract_isnull('{"id": null, "name": "doris"}', '$.id') |
+--------------------------------------------------------------+
| 1 |
+--------------------------------------------------------------+ -
パスが存在しない場合
SELECT json_extract_isnull('{"id": null, "name": "doris"}', '$.id2');+---------------------------------------------------------------+
| json_extract_isnull('{"id": null, "name": "doris"}', '$.id2') |
+---------------------------------------------------------------+
| NULL |
+---------------------------------------------------------------+ -
NULL を渡した場合
SELECT json_extract_isnull('{"id": 123, "name": "doris"}', NULl);+-----------------------------------------------------------+
| json_extract_isnull('{"id": 123, "name": "doris"}', NULl) |
+-----------------------------------------------------------+
| NULL |
+-----------------------------------------------------------+SELECT json_extract_isnull(NULL, '$.id2');+------------------------------------+
| json_extract_isnull(NULL, '$.id2') |
+------------------------------------+
| NULL |
+------------------------------------+