本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
JSON_SIZE 函數傳回傳回序列化為字串時給定 SUPER
運算式中的位元組數。
語法
JSON_SIZE(super_expression)
引數
- super_expression
-
SUPER
常數或運算式。
傳回類型
INTEGER
-
JSON_SIZE 函數傳回
INTEGER
,表示輸入字串中的位元組數。此值與字元數目不同。例如,UTF-8 字元 ⬤ (黑點) 的大小為 3 個位元組,即使它是 1 個字元。
使用須知
JSON_SIZE(x) 在功能上與 OCTET_LENGTH(JSON_SERIALIZE) 相同。但是,請注意,當提供的 SUPER
運算式在序列化時超過系統 VARCHAR
限制時,JSON_SERIALIZE 會傳回錯誤。JSON_SIZE 則沒有此限制。
範例
若要傳回序列化為字串的 SUPER
值的長度,請使用下列範例。
SELECT JSON_SIZE(JSON_PARSE('[10001,10002,"⬤"]'));
+-----------+
| json_size |
+-----------+
| 19 |
+-----------+
請注意,提供的 SUPER
運算式長度為 17 個字元,但 ⬤ 是 3 位元組字元,因此 JSON_SIZE 傳回 19
。