MySQL新类型JSON的用法讲解

前言

MySQL相信大家应该不陌生吧,都知道MySQL有很多数据类型,包括int,char,verchar,这些也是平时建表使用比较多的类型,在MySQL 8引入了新的数据类型——JSON,它使得在数据库中存储和查询 JSON 数据变得更加容易。本文主要是来讲解MySQL新类型JSON的用法讲解。

JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,它使用 JavaScript 的语法来表示结构化数据。JSON 数据格式具有简单、易于阅读和编写等优点,因此在 Web 开发和 API 集成中得到广泛应用。

在 MySQL 中,JSON 数据类型可以存储和查询 JSON 格式的数据。JSON 数据可以存储在列中,并且可以通过 JSON 函数和操作符来查询和处理,相当可以在数据库字段中存储对象数据或者key-value数据。

新类型JSON用法

下面是一些关于 MySQL 中 JSON 数据类型的用法和代码示例,主要是讲解如何定义JSON类型,以及对应的增删查改

创建包含 JSON 列的表

首先,创建一个包含 JSON 列的表。在创建表时,可以指定某个列的数据类型为 JSON。例如:

CREATE TABLE `sys_dict` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `property9` json DEFAULT NULL COMMENT '属性9',
  PRIMARY KEY (`id`) USING BTREE,
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='字典表';

插入 JSON 数据

可以向 JSON 列中插入 JSON 数据。插入 JSON 数据时,可以使用 JSON_OBJECT() 函数来构建 JSON 对象,或者使用其他 JSON 函数来处理 JSON 数据。例如:

INSERT INTO sys_dict (id, property9)

VALUES (1, JSON_OBJECT('name', 'John', 'age', 30));

查询 JSON 数据

可以使用 JSON 函数和操作符来查询 JSON 数据。例如,可以使用 JSON_EXTRACT() 函数来提取 JSON 对象中的值,或者使用 JSON_CONTAINS() 函数来检查 JSON 对象是否包含某个值。例如:

SELECT JSON_EXTRACT(property9, '$.name') AS name FROM sys_dict WHERE id = 1;

更新 JSON 数据

我们可以使用 JSON 函数和操作符来更新 JSON 数据。例如,我们可以使用 JSON_SET() 函数来设置 JSON 对象中的值,或者使用 JSON_REPLACE() 函数来替换 JSON 对象中的值。例如:

UPDATE sys_dict SET property9= JSON_SET(property9, '$.age', 35) WHERE id = 1;

删除 JSON 数据

我们可以使用 JSON_SET() 函数来删除 JSON 对象中的值。例如:

UPDATE sys_dict  SET property9 = JSON\_SET(property9,'$.name',null)WHERE id =1;

查询某个key对应的值,把key_name换成实际要查询的key值就行,比如name

SELECT property9 ->'$.key_name' AS value  
FROM sys_dict  

你可能感兴趣的:(java基础,mysql,json,数据库)