MySQL的json查问之json_insert、json_merge_patch、json_merge_preserve、josn_remove、json_replace、json_set
- json_insert就是向json中插入,如果不存在则插入,存在则疏忽
- json_replace就是替换json中的项,如果不存在则疏忽,存在则替换
- json_set联合后面俩个,存在则替换,不存在则插入
- json_merge_patch多个json进行合并,雷同键名,前面的笼罩后面的,如果值是对象,则递归进行解决
- json_merge_preserve多个json进行合并,雷同键名,则键值组成新的对象
- json_remove移除掉json某一项
数据表
json_insert
例一
select json_insert(info, '$.age', 26) from member;
json中并不存在age键名,则插入
例二
select json_insert(info, '$.name', 'swk') from member;
json中存在name键名,则疏忽
json_replace
例一
select json_replace(info, '$.name', 'swk') from member;
json中存在name键名,则进行替换
例二
select json_replace(info, '$.age', 26) from member;
json中不存在age键名,则疏忽
json_set
例一
select json_set(info, '$.name', 'swk') from member;
json中存在name键名,则进行替换
例二
select json_set(info, '$.age', 26) from member;
json中不存在age键名,则插入
json_merge_patch
例一
select json_merge_patch(info, '{"name":"swk","age":26}') from member;
json合并,如果存在雷同键名,则前面的笼罩后面的,如果值是对象,会递归
json_merge_preserve
select json_merge_preserve(info, '{"name":"swk","age":26}') from member;
json合并,如果存在雷同键名,则组成新的对象
json_remove
例一
select json_remove(info, '$.name') from member;
移除json中指定项
留言
点击留言