跳到主要内容

JSON_EXISTS_PATH

描述

用来判断 <path> 指定的字段在 JSON 数据中是否存在,如果存在返回 TRUE,不存在返回 FALSE

语法

JSON_EXISTS_PATH (<json_object>, <path>)

参数

  • <json_object> JSON 类型,在其中判断 <path> 指定的路径是否存在。
  • <path> String 类型,指定路径。

返回值

  • BOOL 类型,如果存在返回 TRUE,不存在返回 FALSE
  • NULL 如果 <json_object><path> 任意一个为 NULL,返回 NULL。

示例

  1. 示例 1
    SELECT JSON_EXISTS_PATH('{"id": 123, "name": "doris"}', '$.name');
    +------------------------------------------------------------+
    | JSON_EXISTS_PATH('{"id": 123, "name": "doris"}', '$.name') |
    +------------------------------------------------------------+
    | 1 |
    +------------------------------------------------------------+
  2. 示例 2
    SELECT JSON_EXISTS_PATH('{"id": 123, "name": "doris"}', '$.age');
    +-----------------------------------------------------------+
    | JSON_EXISTS_PATH('{"id": 123, "name": "doris"}', '$.age') |
    +-----------------------------------------------------------+
    | 0 |
    +-----------------------------------------------------------+
  3. NULL 参数
    SELECT JSON_EXISTS_PATH('{"id": 123, "name": "doris"}', NULL);
    +--------------------------------------------------------+
    | JSON_EXISTS_PATH('{"id": 123, "name": "doris"}', NULL) |
    +--------------------------------------------------------+
    | NULL |
    +--------------------------------------------------------+
    SELECT JSON_EXISTS_PATH(NULL, '$.age');
    +---------------------------------+
    | JSON_EXISTS_PATH(NULL, '$.age') |
    +---------------------------------+
    | NULL |
    +---------------------------------+