---
title: "JSON_REMOVE - OceanBase 数据库 V4.5.0 | OceanBase 文档中心"
description: "JSON_REMOVE 描述 该函数用于从 JSON 文档中删除数据并返回结果。 语法 JSON_REMOVE(json_doc, path[, path] ...) 说明 json_doc 参数用于指定 JSON 文档， path 为路径参数。如果任何参数为 NULL ，则返回 NULL 。 以下情况都会发生报错：…"
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.5.0

# JSON_REMOVE

更新时间：2026-03-14 12:54:41

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.5.0/zh-CN/700.reference/500.sql-reference/100.sql-syntax/200.common-tenant-of-mysql-mode/400.functions-of-mysql-mode/700.json-functions-of-mysql-mode/300.modify-json-text-function-of-mysql-mode/700.json-remove-of-mysql-mode.md)  

## 描述

该函数用于从 JSON 文档中删除数据并返回结果。

## 语法

```sql
JSON_REMOVE(json_doc, path[, path] ...)

```

## 说明

`json_doc` 参数用于指定 JSON 文档，`path` 为路径参数。如果任何参数为 `NULL`，则返回 `NULL`。

以下情况都会发生报错：

- `json_doc` 参数不是有效的 JSON 文档。
 - `path` 参数不是有效的路径表达式。
 - `path` 参数是 `$`。
 - `path` 参数包含 * 或 ** 通配符。

`path` 参数按照从左到右进行计算，即通过评估一条路径产生的文档作为评估下一条路径的新值。

如果要移除的元素在文档中不存在，则不会产生错误。在这种情况下，路径不会影响文档。

## 示例

```sql
obclient> SET @jn = '["a", ["b", "c"], "d"]';
Query OK, 0 rows affected

obclient> SELECT JSON_REMOVE(@jn, '$[1]');
+--------------------------+
| JSON_REMOVE(@jn, '$[1]') |
+--------------------------+
| ["a", "d"]               |
+--------------------------+
1 row in set

obclient> SELECT JSON_REMOVE(@jn, '$[7]');
+--------------------------+
| JSON_REMOVE(@jn, '$[7]') |
+--------------------------+
| ["a", ["b", "c"], "d"]   |
+--------------------------+
1 row in set

```

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
