---
title: "JSON_ARRAY - OceanBase 数据库 V4.5.0 | OceanBase 文档中心"
description: JSON_ARRAY 描述 JSON_ARRAY() 函数计算一系列 SQL 标量表达式，将每个表达式转换为 JSON 值，并且构造一个包含这些 JSON 值的 JSON 数组。 JSON_ARRAY() 可以指定参数表达式的计算结果为 JSON 对象、JSON 数组、数字文字、文本文字、日期、时间戳或 NULL 。…
---
切换语言

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

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

# JSON_ARRAY

更新时间：2026-03-13 17:20:16

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.5.0/zh-CN/700.reference/500.sql-reference/100.sql-syntax/300.common-tenant-of-oracle-mode/500.functions-of-oracle-mode/200.single-row-functions-of-oracle-mode/1200.json-functions-oracle-mode/200.create-json-text-function-oracle/100.json-array-oracle-mode.md)  

## 描述

`JSON_ARRAY()` 函数计算一系列 SQL 标量表达式，将每个表达式转换为 JSON 值，并且构造一个包含这些 JSON 值的 JSON 数组。

`JSON_ARRAY()` 可以指定参数表达式的计算结果为 JSON 对象、JSON 数组、数字文字、文本文字、日期、时间戳或 `NULL`。此函数将数字文字转换为 JSON 数字值，并将文本文字转换为 JSON 字符串值。日期和时间戳数据类型在生成的 JSON 对象或数组中打印为遵循 ISO 8601 日期格式的 JSON 字符串。

## 语法

```sql
JSON_ARRAY (
              [val [FORMAT JSON], val [FORMAT JSON] ...]
                    [ABSENT|NULL ON NULL]
              [RETURNING JSON | CLOB| BLOB| VARCAHR2| VARCHAR2[size]]
              [STRICT] )

```

## 语法说明

`JSON_ARRAY()` 函数语法说明如下：

- `FORMAT JSON`: 可选子句，用于指定输入的字符串是 JSON 文本，输出时不需要再添加引号('"')。
 - `ABSENT|NULL ON NULL`: 可选子句，指定对于空值的处理。
 - `NULL ON NULL`： 当前表达式返回 JSON 的 `NULL` 类型。
 - `ABSENT ON NULL`： 如果表达式计算结果是 `NULL`，则忽略当前表达式。
 - `RETURNING JSON | CLOB| BLOB| VARCAHR2| VARCHAR2[size]`: 可选子句，用于指定返回值类型。
 - `STRICT`：可选子句，用于校验输出是合法的 JSON 格式。

## 示例

```shell
# 使用嵌套表达式以及 NULL ON NULL 子句
obclient> SELECT JSON_ARRAY (JSON_ARRAY(1,2,3),100,'California',null NULL ON NULL) "JSON Array Example"
        FROM DUAL;
+-----------------------------------+
| JSON Array Example                |
+-----------------------------------+
| ["[1,2,3]",100,"California",null] |
+-----------------------------------+
1 row in set

# ABSENT ON NULL 子句生效，结果里面没有 Null
obclient> SELECT JSON_ARRAY( JSON_ARRAY(1,2,3),100,'California', null ABSENT ON NULL) "JSON Array Example"
      FROM DUAL;
+----------------------------------+
| JSON Array Example               |
+----------------------------------+
| ["[1, 2, 3]", 100, "California"] |
+----------------------------------+
1 row in set

# FORMAT JSON 子句生效，把当前表达式输入字符串当做 JSON 类型，输出结果没有被加'\"'

obclient> SELECT JSON_ARRAY('{"a":"a-value", "b" : "b-value"}' format json RETURNING CLOB)
    FROM DUAL;
+--------------------------------------------------------------------+
| JSON_ARRAY('{"A":"A-VALUE","B":"B-VALUE"}'FORMATJSONRETURNINGCLOB) |
+--------------------------------------------------------------------+
| [{"a": "a-value", "b": "b-value"}]                                 |
+--------------------------------------------------------------------+
1 row in set

# 输入中没有 FORMAT JSON, 输出字符串被加了'\"'
obclient> SELECT JSON_ARRAY('{"a":"a-value", "b" : "b-value"}' RETURNING CLOB) FROM DUAL;
+----------------------------------------------------------+
| JSON_ARRAY('{"A":"A-VALUE","B":"B-VALUE"}'RETURNINGCLOB) |
+----------------------------------------------------------+
| ["{\"a\":\"a-value\", \"b\" : \"b-value\"}"]             |
+----------------------------------------------------------+
1 row in set

# 指定返回值类型为 VARCHAR2 类型
obclient> SELECT JSON_ARRAY('{"a":"a-value", "b" : "b-value"}' format json RETURNING VARCHAR2)
    FROM DUAL;
+------------------------------------------------------------------------+
| JSON_ARRAY('{"A":"A-VALUE","B":"B-VALUE"}'FORMATJSONRETURNINGVARCHAR2) |
+------------------------------------------------------------------------+
| [{"a": "a-value", "b": "b-value"}]                                     |
+------------------------------------------------------------------------+
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) 咨询热线
