JSON操作符¶
神通数据库支持的JSON操作符如下
| 操作符 | 描述 |
|---|---|
| -> | 功能实现参考 JSON_EXTRACT |
| ->> | 功能实现参考 JSON_UNQUOTE(JSON_EXTRACT()) |
示例¶
示例1:json为对象时,json_extract()和操作符对比
create table test(js json);
insert into test values('{"id":"3","name":"oscar"}');
select json_extract(js,'$.name') from test;
JSON_EXTRACT(json) |
------------------------
"oscar" |
总数目:1
select js->'$.name' as name from test;
NAME(json) |
----------------
"oscar" |
总数目:1
select json_unquote(json_extract(js,'$.name')) from test;
JSON_UNQUOTE(text) |
------------------------
oscar |
总数目:1
select js->>'$.name' as name from test;
NAME(text) |
----------------
oscar |
总数目:1
drop table test;
示例2:json为数组时,json_extract()和操作符对比
create table test(js json);
insert into test values('[10,"oscar",30]');
select json_extract(js,'$[1]') from test;
JSON_EXTRACT(json) |
------------------------
"oscar" |
总数目:1
select js->'$[1]' as name from test;
NAME(json) |
----------------
"oscar" |
总数目:1
select json_unquote(json_extract(js,'$[1]')) from test;
JSON_UNQUOTE(text) |
------------------------
oscar |
总数目:1
select js->>'$[1]' as name from test;
NAME(text) |
----------------
oscar |
总数目:1
drop table test;