JSON_STORAGE_SIZE
功能描述
JSON_STORAGE_SIZE函数返回用于存储JSON文档的二进制字节数。
注意事项
- 该功能仅在数据库兼容模式为MySQL时支持(即数据库初始化时指定DBCOMPATIBILITY='B')。
- 根据实际存储方式的差异,调用Vastbase内部函数计算json在Vastbase中的具体存储大小,其结果与MySQL不同。
语法格式
JSON_STORAGE_SIZE(json_val)
参数说明
json_val
JSON文档,它可以是一个JSON字符串,或者一个JSON列。
示例
1、创建测试表并插入一条数据。
CREATE TABLE table_1160258 (json_col JSON NOT NULL);
INSERT INTO table_1160258 VALUES ('{"x": 1, "y": 2}');
2、在SELECT语句中使用JSON_STORAGE_SIZE函数。
SELECT json_col,JSON_STORAGE_SIZE(json_col) FROM table_1160258;
返回结果为:
json_col | json_storage_size
------------------+-------------------
{"x": 1, "y": 2} | 17
(1 row)
3、更新表数据。
UPDATE table_1160258 SET json_col = '{"x": 1, "y": 2, "z": 3}';
4、再次执行步骤二查询语句。
SELECT json_col,JSON_STORAGE_SIZE(json_col) FROM table_1160258;
返回结果为:
json_col | json_storage_size
--------------------------+-------------------
{"x": 1, "y": 2, "z": 3} | 25
(1 row)