数据库json,视图

1 什么是JSON? 
    JSON是一种轻量级的数据交换格式,全称为JavaScript Object Notation(JavaScript对象表示法)。它以易于阅读和编写的文本格式来表示结构化数据,常用于Web应用程序之间的数据传输。 
JSON由键值对组成 :
    - 对象(Object):用花括号 `{}` 表示一个对象,对象由多个键值对组成,键值对之间用逗号分隔。 
对象,hashmap

对象:   属性:值、

HashMap:键 值
数组(Array):用方括号 `[]` 表示一个数组,数组是由多个值组成,值之间用逗号分隔。 

增:
- 数组:json_array(值1,值2,...)
- 对象:json_object(键1,值1,键2,值2)

删:
update person set  friend = json_remove(friend,"$.age") where id =1

查:
- json_extract(字段名,“$.key”)
- ->                 字段名->"$.key"
- json_keys(字段)   查询key

改:
json_set("字段","$.key",值)

update person set  friend = json_set(friend,"$.age","18") where id =1 #也可以用来添加

函数搜索

-  JSON_CONTAINS (字段,值)
-  JSON_CONTAINS (字段,值,'$.key')

SELECT * FROM person WHERE JSON_CONTAINS(hobby, '"游戏"');

SELECT * FROM person WHERE JSON_CONTAINS(friend,'"侯妈"','$.name')

注意: 值需要另外加引号,否则报错。


创建视图  : create view  视图名称  as  sql语句(可以是多表查询)
查看视图 :可以在navicat中直接查看视图
修改视图 :create or replace view  视图名称   as  sql语句

插入数据 : 和普通表插入的格式一样,但是视图改变也会将影响原来的表  insert into 视图名 ()  vlues ()
删除数据 :  和普通表删除数据做法一样  delete from 视图名  where 条件
删除视图 :  drop view   if exists 视图名称       注意: 当我们改变原表的时候,视图表中的内容也会发生改变。

你可能感兴趣的:(数据库)