返回顶部
首页 > 资讯 > 数据库 >MySQL的JSON操作
  • 548
分享到

MySQL的JSON操作

mysqljson 2023-09-04 13:09:00 548人浏览 八月长安
摘要

官网地址 1. Mysql JSON介绍 As of mysql 5.7.8, Mysql supports a native jsON data type defined by RFC 7159

官网地址

1. Mysql JSON介绍

  • As of mysql 5.7.8, Mysql supports a native jsON data type defined by RFC 7159 that enables efficient access to data in JSON (javascript Object Notation) documents.

  • Automatic validation of JSON documents stored in JSON columns. Invalid documents produce an error.

  • Optimized storage fORMat. JSON documents stored in JSON columns are converted to an internal format that permits quick read access to document elements.

  • It is important to keep in mind that the size of any JSON document stored in a JSON column is limited to the value of the max_allowed_packet system variable.
    在这里插入图片描述

  • A JSON column cannot have a non-NULL default value.

  • In MySQL, JSON values are written as strings. MySQL parses any string used in a context that requires a JSON value, and produces an error if it is not valid as JSON. These contexts include inserting a value into a column that has the JSON data type and passing an argument to a function that expects a JSON value (usually shown as json_doc or json_val in the documentation for MySQL JSON functions)

  • MySQL handles strings used in JSON context using the utf8mb4 character set and utf8mb4_bin collation.

  • Case sensitivity also applies to the JSON null, true, and false literals, which always must be written in lowercase.

  • In MySQL 5.7.9 and later, you can use column->path with a JSON column identifier and JSON path expression as a synonym for JSON_EXTRACT(column, path).

在这里插入图片描述

2. JSON Function Reference

在这里插入图片描述
在这里插入图片描述
MySQL 5.7.22 and later supports two aggregate JSON functions JSON_ARRAYAGG() and JSON_OBJECTAGG().
Also beginning with MySQL 5.7.22:

  • “pretty-printing” of JSON values in an easy-to-read format can be obtained using the JSON_PRETTY() function.
  • You can see how much storage space a given JSON value takes up using JSON_STORAGE_SIZE().

3. Functions That Create JSON Values

mysql> SELECT JSON_ARRAY(1, "abc", NULL, TRUE, CURTIME());+---------------------------------------------+| JSON_ARRAY(1, "abc", NULL, TRUE, CURTIME()) |+---------------------------------------------+| [1, "abc", null, true, "11:30:24.000000"]   |+---------------------------------------------+mysql> SELECT JSON_OBJECT('id', 87, 'name', 'carrot');+-----------------------------------------+| JSON_OBJECT('id', 87, 'name', 'carrot') |+-----------------------------------------+| {"id": 87, "name": "carrot"}            |+-----------------------------------------+mysql> SELECT JSON_QUOTE('null'), JSON_QUOTE('"null"');+--------------------+----------------------+| JSON_QUOTE('null') | JSON_QUOTE('"null"') |+--------------------+----------------------+| "null"             | "\"null\""           |+--------------------+----------------------+mysql> SELECT JSON_QUOTE('[1, 2, 3]');+-------------------------+| JSON_QUOTE('[1, 2, 3]') |+-------------------------+| "[1, 2, 3]"             |+-------------------------+

Converting between JSON and non-JSON values

在这里插入图片描述

on duplicate key

mysql> CREATE TABLE `t_json` (    ->   `id` int NOT NULL AUTO_INCREMENT,    ->   `json_val` json DEFAULT NULL,    ->   PRIMARY KEY (`id`)    -> ) ENGINE=InnoDB AUTO_INCREMENT=9;mysql> select * from t_json;Empty set (0.00 sec)mysql> insert into t_json values(1, '[123]') on duplicate key update json_val=JSON_ARRAY_APPEND(json_val, '$', 1);Query OK, 1 row affected (0.00 sec)mysql> mysql> mysql> mysql> select * from t_json;+----+----------+| id | json_val |+----+----------+|  1 | [123]    |+----+----------+1 row in set (0.00 sec)mysql> mysql> insert into t_json values(1, '[123]') on duplicate key update json_val=JSON_ARRAY_APPEND(json_val, '$', 1);Query OK, 2 rows affected (0.00 sec)mysql> select * from t_json;+----+----------+| id | json_val |+----+----------+|  1 | [123, 1] |+----+----------+1 row in set (0.00 sec)mysql> insert into t_json values(1, '[123]') on duplicate key update json_val=JSON_ARRAY_APPEND(json_val, '$', 1);Query OK, 2 rows affected (0.00 sec)mysql> select * from t_json;+----+-------------+| id | json_val    |+----+-------------+|  1 | [123, 1, 1] |+----+-------------+1 row in set (0.01 sec)

来源地址:https://blog.csdn.net/xiaolixi199311/article/details/131977575

您可能感兴趣的文档:

--结束END--

本文标题: MySQL的JSON操作

本文链接: https://lsjlt.com/news/393573.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL的JSON操作
    官网地址 1. MySQL json介绍 As of MySQL 5.7.8, MySQL supports a native JSON data type defined by RFC 7159 ...
    99+
    2023-09-04
    mysql json
  • MySQL 8.0 可以操作 JSON 了
    目录1、简单概述2、JSON基础工具3、JSON Path expression4、查找并修改JSON前言: 经过漫长的测试,即将整体迁移至Mysql8.0; Mysql8.0 对于...
    99+
    2024-04-02
  • MySQL中json字段的操作方法
       MySQL5.7.8中引入了json字段,这种类型的字段使用的频率比较低,但是在实际操作中,有些业务仍然在用,我们以此为例,介绍下json字段的操作方法: 还是从例子看起: mysql&...
    99+
    2022-05-31
    MySQL json MySQL json字段
  • MYSQL中的json数据操作代码
    目录mysql中的json数据操作1.2 基础查询操作1.2.1 一般json查询1.2.2 多个条件查询1.2.3 json中多个字段关系查询1.2.4 关联表查询1.3 JSON函数操作1.3.1 官方json函数1...
    99+
    2024-04-02
  • Python 操作json
    Json语法规则: 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 Json字符串本质上是一个字符串,用单引号表示 Json数据的书写格式 名称--值对,包括名称字段(在双引号中),后面跟一个冒号,然后是值: “na...
    99+
    2023-01-31
    操作 Python json
  • python3操作json
    json本身就是一种字符串。 # 需要导入模块包 import json 1,将字符串转为json格式 s1 = "{'key1':'value1','key2':'value2'}" print(s1) print(type(s1)) ...
    99+
    2023-01-31
    操作 json
  • java中的JSON操作
    在Java中,可以使用许多库来操作JSON数据。以下是一些常用的JSON库:1. Jackson:Jackson是一个流行的JSON...
    99+
    2023-09-28
    Java
  • python操作json(一)
    Python 操作jsonJson语法规则:数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组Json字符串本质上是一个字符串,用单引号表示 Json数据的书写格式名称--值对,包括名称字段(在双引号中),后面跟一个冒号,然后是值...
    99+
    2023-01-31
    操作 python json
  • MySQL 中怎么操作JSON数据类型
    今天就跟大家聊聊有关MySQL 中怎么操作JSON数据类型,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。创建一个 JSON 字段的表首先先创建一个表...
    99+
    2024-04-02
  • Mybatis-Plus读写Mysql的Json字段的操作代码
    目录前置条件一、新建mysql表增加json字段二、pojo类三、测试类前置条件 确保mysql的版本是5.7+ 一、新建mysql表增加json字段 二、pojo类 packag...
    99+
    2024-04-02
  • PHP中的JSON操作指南
    一、JSON的基础知识1.1 什么是JSONJSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它是一种基于文本的格式,能够被多种编程语言解析和生成。JSON数据可以在JavaScript中使用,也可...
    99+
    2023-05-20
    PHP JSON 操作指南
  • python 存储json数据的操作
    本篇我们将学习简单的json数据的存储 首先我们需要引入json模块: import json 这里我们模拟一个常见常见,我们让用户输入用户名、密码,在密码输入完成后提示用户再次输入密码来确认自己的输入,如果两...
    99+
    2022-06-02
    python 存储数据 存储json数据
  • Python中json库的操作指南
    目录概念json操作json转换成字典:字典转成json串总结概念 json是一种通用的数据类型一般情况下接口返回的数据类型都是json长得像字典,形式也是k-v{ }其实json是...
    99+
    2023-05-14
    python中的json库 python读取json python json库
  • MySQL5.7中的JSON基本操作指南
    前言 因为项目需要,存储字段存储成了JSON格式,在项目中是将查询出来的值通过jackson转成相应的bean进行处理的,觉得不够简单方便。 MySQL从5.7版本开始就支持JSON格式的数据,操作用起来挺...
    99+
    2024-04-02
  • 详细解读Python中的json操作
    目录1.什么是Json2.python数据类型与json数据类型的映射关系3. json中常用的方法3-1   json.dumps()3-2 json.load...
    99+
    2024-04-02
  • C#中的Linq to JSON操作详解
    目录一、创建JObject and JArrary实例1、手动创建JSON1、创建JSON对象,JObject2、创建JSON数组,JArrary2、使用Linq创建JSON3、从对...
    99+
    2024-04-02
  • Python中的json操作实例分析
    本文小编为大家详细介绍“Python中的json操作实例分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python中的json操作实例分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.什么是JsonJS...
    99+
    2023-06-30
  • golang中json操作的完全指南
    目录前言1. 结构体与JSON互转2. map与JSON互转3. 结构体的变量不加tag标签能否正常转成json数据4. JSON操作的一些小技巧(1)忽略掉 struct 指定字段...
    99+
    2024-04-02
  • golang的json操作方法有哪些
    这篇“golang的json操作方法有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“golang的json操作方法有哪些...
    99+
    2023-07-05
  • Python读写JSON文件的操作详解
    目录JSONJSON 起源JSON 样例Python 原生支持 JSON序列化 JSON简单的序列化示例JSON 反序列化简单的反序列化示例应用案例编码和解码JSON JSON 起源...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作