

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# JSON\$1SIZE 函数
<a name="r_json_size"></a>

当序列化为字符串时，JSON\$1SIZE 函数返回给定 `SUPER` 表达式中的字节数。

## 语法
<a name="r_json_size-synopsis"></a>

```
JSON_SIZE(super_expression)
```

## 参数
<a name="r_json_size-arguments"></a>

*super\$1expression*  
`SUPER` 常量或表达式。

## 返回类型
<a name="r_json_size-returns"></a>

`INTEGER`  
JSON\$1SIZE 函数返回一个 `INTEGER`，表示输入字符串中的字节数。此值不同于字符数。例如，UTF-8 字符 ⬤（黑点）的大小为 3 字节，即使它是 1 个字符也是如此。

## 使用说明
<a name="r_json_size-usage_notes"></a>

JSON\$1SIZE(x) 在功能上与 OCTET\$1LENGTH(JSON\$1SERIALIZE) 相同。但请注意，如果提供的 `SUPER` 表达式在序列化时超过系统的 `VARCHAR` 限制，JSON\$1SERIALIZE 会返回错误。JSON\$1SIZE 没有这个限制。

## 示例
<a name="r_json_size_example"></a>

要返回序列化为字符串的 `SUPER` 值的长度，请使用以下示例。

```
SELECT JSON_SIZE(JSON_PARSE('[10001,10002,"⬤"]'));

+-----------+
| json_size |
+-----------+
|        19 |
+-----------+
```

请注意，提供的 `SUPER` 表达式长度为 17 个字符，但 ⬤ 为 3 字节字符，因此 JSON\$1SIZE 返回 `19`。