

 Amazon Redshift は、パッチ 198 以降、新しい 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\_SIZE 関数
<a name="r_json_size"></a>

JSON\_SIZE 関数は、文字列にシリアル化されたときに、指定した `SUPER` 式のバイト数を返します。

## 構文
<a name="r_json_size-synopsis"></a>

```
JSON_SIZE(super_expression)
```

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

*super\_expression*  
`SUPER` 定数または式。

## 戻り型
<a name="r_json_size-returns"></a>

`INTEGER`  
JSON\_SIZE 関数は、入力文字列のバイト数を示す `INTEGER` を返します。この値は文字数とは異なります。例えば、UTF-8 文字「⬤」(黒いドット) のサイズは、1 文字ですが 3 バイトです。

## 使用に関する注意事項
<a name="r_json_size-usage_notes"></a>

JSON\_SIZE (x) は、機能的には OCTET\_LENGTH (JSON\_SERIALIZE) と同じです。ただし、指定された `SUPER` 式がシリアル化時にシステムの `VARCHAR` 制限を超える場合、JSON\_SERIALIZE はエラーを返すことに注意してください。JSON\_SIZE にはこの制限はありません。

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

文字列にシリアル化された `SUPER` 値の長さを返すには、次の例を使用します。

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

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

指定された `SUPER` 式の長さは 17 文字ですが、「⬤」は 3 バイトの文字なので、JSON\_SIZE は `19` を返すことに注意してください。