create

CREATE TABLE t_test (

salary_data json NULL COMMENT 'JSON类型字段'

);

-- insert

INSERT INTO t_test(salary_data) VALUES('{"param_1": "111","param_2": "222","param_3": "333","param_4": "444"}');

INSERT INTO t_test(salary_data) VALUES('{"param_1": "xxx","param_2": "yyy","param_3": "333","param_4": 444}');

-- select -> json_keys

SELECT json_keys(salary_data) from t_test;

-- select -> one param

SELECT salary_data->'$.param_4' FROM t_test;

-- select -> json_object

select salary_data from t_test;

-- select -> where

SELECT salary_data->'$.param_4' FROM t_test where salary_data->'$.param_4'='444';

SELECT salary_data->'$.param_4' FROM t_test where salary_data->'$.param_4'=444;

SELECT salary_data->'$.param_4' FROM t_test where JSON_CONTAINS(salary_data, '"444"', '$.param_4');

SELECT salary_data->'$.param_4' FROM t_test where JSON_CONTAINS(salary_data, '444', '$.param_4');

-- update -> json_insert

UPDATE t_test SET salary_data = json_insert(salary_data, '$.param_5', 555, '$.param_6', 666) WHERE salary_data->'$.param_1'= 'xxx';

-- update -> json_set

UPDATE t_test SET salary_data = json_set(salary_data, '$.param_2', 222, '$.param_3', 333) WHERE salary_data->'$.param_1'= '111';

-- update -> json_remove

UPDATE t_test SET salary_data = json_remove(salary_data, '$.param_5', '$.param_6') WHERE salary_data->'$.param_1'= 'xxx';

MYSQL JSON字段操作的更多相关文章

  1. Mysql JSON字段提取某一个属性值的函数

    mysql从5.7开始才支持JSON_EXTRACT等 JSON相关的函数, 项目里用到的mysql是5.6的,需要提取JSON字段里某一个属性值进行统计, 自己写了一个笨的提取方法: CREATE ...

  2. mysql json字段

    从 MySQL 5.7.8 开始,MySQL 支持原生的 JSON 数据类型.   一. 创建json(不可以设置长度,可以是null,不能用有默认值) mysql> CREATE TABLE ...

  3. MySQL数据库 字段操作 多表关系(更新中...)

    外键 (foreign key) ## 外键 ```mysql # 作者(author):id,name,sex,age,mobile, detail_id # 作者详情(author_detail) ...

  4. MySQL json 类型操作快速入门

    MySQL 5.7.8开始支持 json类型. create table t(id int,js json,PRIMARY KEY (`id`)) 插入数据insert into t values(1 ...

  5. mysql 和mssql2016中的json字段相关操作

    Mysql: mysql中有专门的Json字段,不是通用的varchar字段,可以保存key/value对,也可保存value集合. 可以增加.删除.修改Json中的某一字段,查询时可以为条件. 如果 ...

  6. mysql中,通过json_insert函数向json字段插入键值?json_insert函数的使用?

    需求描述: 通过json_insert向json字段中插入值,在此进行实验,记录下. 操作过程: 1.查看已经有的包含json数据类型的表 mysql> select * from tab_js ...

  7. mysql数据库中,如何对json数据类型的值进行修改?通过json_set函数对json字段值进行修改?

    需求描述: 今天在看mysql中存放json数据类型的问题,对于json数据进行修改的操作, 在此记录下. 操作过程: 1.创建包含json数据类型的表,插入基础数据 mysql> create ...

  8. MySQL JSON 类型数据操作

    1.Java 中动态扩展字段,会导致数据库表被锁,在MySQL 5.7.8版本之前,因为MySQL不能直接操作JSON类型数据,可以将一个字段设定成varchar类型,里面存放JSON格式数据,这样在 ...

  9. mysql 5.7 json 字段类型查找、修改

    修改 json 里的数组字段 mysql> set @json = '{"test": [{"name": "laravel"}, { ...

随机推荐

  1. SpringBoot 构建 Docker 镜像的 3 种方式

    本文将介绍3种技术,通过 Maven 把 SpringBoot 应用构建成 Docker 镜像. (1)使用 spring-boot-maven-plugin 内置的 build-image. (2) ...

  2. Springboot项目整合Swagger2报错

    SpringBoot2.2.6整合swagger2.2.2版本的问题,启动SpringBoot报如下错: Error starting ApplicationContext. To display t ...

  3. Java类、实例初始化的顺序

    求如下 java 代码的输出?? class T implements Cloneable{ public static int k = 0; public static T t1 = new T(& ...

  4. sharding-jdbc源码解析

    参考博客:https://cloud.tencent.com/developer/article/1529692 看sharding-jdbc支持XA协议重点看下面的代码 sharding-trans ...

  5. 2、尚硅谷_SSM高级整合_使用ajax操作实现页面的查询功能

    16.尚硅谷_SSM高级整合_查询_返回分页的json数据.avi 在上一章节的操作中我们是将PageInfo对象存储在request域中,然后list页面解析request域中的对象实现信息的显示. ...

  6. kubernetes资源均衡器Descheduler

    背景 Kubernetes中的调度是将待处理的pod绑定到节点的过程,由Kubernetes的一个名为kube-scheduler的组件执行.调度程序的决定,无论是否可以或不能调度容器,都由其可配置策 ...

  7. eclipse导入git项目

    复制项目的git路径 Eclipse打开 Git Repostitories 视图 弹出show view窗口 选择ok ,进入git repositories 视图窗口 我这里已经导入从我的git仓 ...

  8. 重学 Java 设计模式:实战中介者模式「按照Mybaits原理手写ORM框架,给JDBC方式操作数据库增加中介者场景」

    作者:小傅哥 博客:https://bugstack.cn - 原创系列专题文章 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 同龄人的差距是从什么时候拉开的 同样的幼儿园.同样的小学.一样 ...

  9. 07 . Prometheus监控Memcached并配置Grafana

    List CentOS7.3 prometheus-2.2.1.linux-amd64.tar.gz redis_exporter-v0.30.0.linux-amd64.tar.gz ` 节点名 I ...

  10. JavaScript基础尽量少使用全局变量(001)

    Pattern意思是模式,好的编码习惯经过多次实践的应用就会形成模式,而反模式(Anti-Pattern)则是不好的编码习惯.了解 JavaScript模式之前,先来看看Anti-pattern的例子 ...