MYSQL中的json数据操作代码

1. 操作JSON数据的优点

在MySQL 5.7版本及以后,MySQL可以支持JSON格式的数据类型。而在使用MySQL时,操作JSON格式的数据是非常有优越性的,以下是这种优越性的总览:

JSON数据是可读性极强的,结构清晰而有层次。

使用JSON格式数据可以避免使用多张关联表,数据查询更加高效。

JSON格式数据可以提高应用程序的性能。

2. 创建一个存储JSON数据的表格

在创建一个存储JSON数据的表格之前,需要先针对数据库服务器进行一下设置(设置默认字符集、设置安全-安全配置等)。

接下来需要执行以下SQL语句来创建一个名为“peopleInfo”的表:

CREATE TABLE `peopleInfo` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL,

`info` json DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

执行以上SQL语句之后,就可以创建一个名为“peopleInfo”的新表,该表包含三个字段:id、name和info。其中,字段id是一个整数类型,用于作为主键,字段“name”是用于存储姓名的字符串类型,而字段“info”是用于存储JSON格式数据的类型。

3. 增加JSON类型数据

在表格“peopleInfo”中增加一条含有JSON数据的记录:

INSERT INTO `peopleInfo`(`name`,`info`)

VALUES ('Lucy','{"age":23, "gender":"female", "hobby":["reading","dancing"]}')

执行以上SQL语句之后,就可以在“peopleInfo”表格中增加一条记录。

4. 查询某个字段的JSON里的元素

查询表格“peopleInfo”中包含有hobby等于dancing的记录,需要使用JSON中的查询方法。

SELECT * FROM `peopleInfo`

WHERE JSON_CONTAINS(info, '{"hobby":["dancing"]}');

执行以上SQL语句之后,就可以查询到符合条件的记录。

5. 更新JSON类型数据

需要使用JSON中的更新元素的方法。比如,将名为Lucy的记录中的hobby修改为hiking和singing。

UPDATE `peopleInfo`

SET `info` = JSON_REPLACE(`info`, '$.hobby', '["hiking", "singing"]')

WHERE `name` = 'Lucy';

执行以上SQL语句之后,对应的信息就会被修改。

6. 删除JSON类型数据

需要使用JSON中的删除元素的方法。比如,将名为Lucy的记录删除。

DELETE FROM `peopleInfo`

WHERE `name` = 'Lucy';

执行以上SQL语句之后,对应信息就会被删除。

结论

在MySQL中使用JSON格式数据可以极大地提高操作效率,同时还能够减少使用多张关联表的数量,减少代码的冗余。因此,在开发MySQL数据库时,合理地使用JSON数据存储可以帮助我们更加轻松地维护数据库。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

数据库标签