一简介
1 什么是JSON?
-
JSON是一种轻量级的数据交换格式。
-
它以易于阅读和编写的文本格式来表示结构化数据,常用于Web应用程序之间的数据传输。
-
对象 JSON由键值对组成
-
数组:
二 操作
插入数据
- 数组:json_array(值1,值2,…)
- 对象:json_object(键1,值1,键2,值2)
--插入数据
#数组
INSERT into nb (id,name,password,hobby) VALUES(11,"tf","123456",JSON_ARRAY("听歌","游戏"))
#对象
insert into nb (id,name,password,friend) values (0,"nb","asdf",JSON_OBJECT("name","666"))
查询
-
json_extract(字段名,“$.key”)
-
字段名->“$.key”
-
json_keys(字段) 查询key
--查询数据
select id,name,password,hobby,JSON_EXTRACT(friend, "$.name") from nb WHERE name = "tf"
select id,name,password,friend->"$.name" from nb
select JSON_KEYS(friend) from nb
修改
- json_set(“字段”,“$.key”,值)
- json_remove(字段,key)
--修改
update nb set friend =JSON_SET(friend, "$.name", "66") where id =12
#若没有对应的键也可以添加属性
update nb set friend = JSON_SET(friend, "$.age",100) where id = 12
#删除
update nb set friend = JSON_REMOVE(friend, "$.name") WHERE id = 12
函数搜索
- JSON_CONTAINS (字段,值)
- JSON_CONTAINS (字段,值,‘$.key’)
--函数搜索
select id,name,password from nb where JSON_CONTAINS(hobby, '"游戏"')
select id,name,password from nb where JSON_CONTAINS(friend, '100',"$.age")
**注意:**值需要另外加引号
有""则加’’