作用:截取数据库中指定字段中存储的json数据中的某个字段对应的值
要做做什么?(根据数据库中相关表字段中存储的json格式的数据,然后以SQL语句的形式取出其中指定key对应的值,最终整理汇总为一张视图供以后的方便使用)

一、初始化

1、初始化表结构

CREATE TABLE `cus_history` (`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键id',`customer_id` bigint(20) NOT NULL COMMENT '客户id',`name` varchar(20) NOT NULL COMMENT '姓名',`sex` char(2) DEFAULT NULL COMMENT '性别',`sex_name` varchar(200) DEFAULT NULL COMMENT '性别',`birthday` date DEFAULT NULL COMMENT '出生日期',`birtydaytype` char(2) DEFAULT NULL COMMENT '出生日期类型',`birtydaytype_name` varchar(200) DEFAULT NULL COMMENT '生日类型',`age` varchar(20) DEFAULT NULL COMMENT '年龄',`nation` char(2) DEFAULT NULL COMMENT '民族',`nation_name` varchar(200) DEFAULT NULL COMMENT '民族',`religion` char(2) DEFAULT NULL COMMENT '宗教',`religion_name` varchar(200) DEFAULT NULL COMMENT '宗教',`phone` varchar(20) DEFAULT NULL COMMENT '手机',`marriage` char(2) DEFAULT NULL COMMENT '婚姻',`marriage_name` varchar(200) DEFAULT NULL COMMENT '婚姻',`service_gradation` char(4) DEFAULT NULL COMMENT '服务等级',`service_gradation_name` varchar(200) DEFAULT NULL COMMENT '服务等级',`occupation` char(2) DEFAULT NULL COMMENT '职业',`occupation_name` varchar(200) DEFAULT NULL COMMENT '职业',`education` char(2) DEFAULT NULL COMMENT '教育程度',`education_name` varchar(200) DEFAULT NULL COMMENT '学历',`blood` char(2) DEFAULT NULL COMMENT '血型',`blood_name` varchar(200) DEFAULT NULL COMMENT '血型',`blood_rh` char(2) DEFAULT NULL COMMENT 'rh血型',`blood_rh_name` varchar(200) DEFAULT NULL COMMENT 'rh血型',`kind` char(2) DEFAULT NULL COMMENT '顾客类型',`kind_name` varchar(200) DEFAULT NULL COMMENT '顾客类型',`gradation` char(2) DEFAULT NULL COMMENT '顾客级别',`gradation_name` varchar(200) DEFAULT NULL COMMENT '顾客级别',`register_addr` varchar(200) DEFAULT NULL COMMENT '户口地址',`contact_addr` varchar(200) DEFAULT NULL COMMENT '联系地址',`address_backup` text COMMENT '地址归档',`relations_backup` text COMMENT '联系人归档',`allowancetype_backup` text COMMENT '津贴归档',`medicaltype_backup` text COMMENT '医保类型归档',`deformitytype_backup_json` json DEFAULT NULL,`deformitytype_backup` text COMMENT '残疾类型归档',`history_disease_backup_json` json DEFAULT NULL,`history_disease_backup` text COMMENT '疾病史归档',`history_drug_backup_json` json DEFAULT NULL,`history_drug_backup` text COMMENT '用药史归档',`history_allergy_backup` text COMMENT '过敏史归档',`history_operation_backup` text COMMENT '手术史归档',`history_bloodtrans_backup` text COMMENT '输血史归档',`history_injury_backup` text COMMENT '外伤史归档',`history_familydisease_backup` text COMMENT '家族疾病史归档',`history_geneticdisease_backup` text COMMENT '遗传史归档',`isvalid` char(1) NOT NULL DEFAULT '1' COMMENT '是否可用',`sts` char(1) NOT NULL DEFAULT '1' COMMENT '是否删除',`create_id` bigint(20) DEFAULT NULL COMMENT '创建人',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`modify_id` bigint(20) DEFAULT NULL COMMENT '修改人',`modify_time` datetime DEFAULT NULL COMMENT '修改时间',`remark` varchar(200) DEFAULT NULL COMMENT '备注',`height` varchar(20) DEFAULT NULL COMMENT '身高',`weight` varchar(20) DEFAULT NULL COMMENT '体重',`identity` varchar(50) DEFAULT NULL COMMENT '身份证号',`telephone` varchar(50) DEFAULT NULL COMMENT '固定电话',`service_id` bigint(20) DEFAULT NULL COMMENT '服务order_id',`china_birthday` varchar(50) DEFAULT NULL COMMENT '农历生日',`user_service_id` bigint(20) DEFAULT NULL COMMENT '服务id',PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=3835 DEFAULT CHARSET=utf8 COMMENT='客户历史档案';

2、插入相关数据

INSERT INTO `guns_uts_hs`.`cus_history`(`id`, `customer_id`, `name`, `sex`, `sex_name`, `birthday`, `birtydaytype`, `birtydaytype_name`, `age`, `nation`, `nation_name`, `religion`, `religion_name`, `phone`, `marriage`, `marriage_name`, `service_gradation`, `service_gradation_name`, `occupation`, `occupation_name`, `education`, `education_name`, `blood`, `blood_name`, `blood_rh`, `blood_rh_name`, `kind`, `kind_name`, `gradation`, `gradation_name`, `register_addr`, `contact_addr`, `address_backup`, `relations_backup`, `allowancetype_backup`, `medicaltype_backup`, `deformitytype_backup_json`, `deformitytype_backup`, `history_disease_backup_json`, `history_disease_backup`, `history_drug_backup_json`, `history_drug_backup`, `history_allergy_backup`, `history_operation_backup`, `history_bloodtrans_backup`, `history_injury_backup`, `history_familydisease_backup`, `history_geneticdisease_backup`, `isvalid`, `sts`, `create_id`, `create_time`, `modify_id`, `modify_time`, `remark`, `height`, `weight`, `identity`, `telephone`, `service_id`, `china_birthday`, `user_service_id`) VALUES (3832, 53543, 'Object', '01', '男', '2017-09-02', '02', '阳历', '2', '01', '汉族', '03', '佛教', '18595921011', '01', '已婚', '1000', '轻度依赖', '01', '国家机关、党群组织、企业、事业单位负责人', '01', '研究生', '01', 'A型', '01', '阴性', NULL, NULL, NULL, NULL, '河南省信阳市平桥区', '杭州市下城区西湖文化广场', NULL, '[{\"contactnumber\":\"18598961010\",\"name\":\"小黑\",\"relationtype\":\"06\",\"relationtypeName\":\"弟弟\",\"remark\":\"0\"},{\"contactnumber\":\"18598971010\",\"name\":\"小白\",\"relationtype\":\"05\",\"relationtypeName\":\"哥哥\",\"remark\":\"0\"},{\"contactnumber\":\"18597981010\",\"name\":\"小明\",\"relationtype\":\"09\",\"relationtypeName\":\"儿子\",\"remark\":\"1\"}]', '{\"allowance\":\"01\",\"allowanceName\":\"国家定期抚恤补助优抚对象\"}', '{\"isdefault\":\"1\",\"medicalvalue\":\"城镇职工基本医疗保险\"}', NULL, '[]', NULL, '[{\"diseasename\":\"糖尿病\",\"isdefault\":\"1\"},{\"diseasename\":\"冠心病\",\"isdefault\":\"1\"},{\"diseasename\":\"慢性阻塞性肺病\",\"isdefault\":\"1\"}]', NULL, '[]', '[{\"drugname\":\"青霉素\",\"isdefault\":\"1\"},{\"drugname\":\"磺胺\",\"isdefault\":\"1\"}]', '[{\"operationdate\":\"2019-11-01\",\"operationname\":\"肠胃炎手术\"}]', '[{\"historyname\":\"二次输血的\",\"modifyId\":225,\"transdate\":\"2019-11-01\"}]', '[{\"historyname\":\"破皮流血\",\"injurydate\":\"2019-11-01\"}]', '[{\"diseasename\":\"糖尿病\",\"isdefault\":\"1\",\"relationtype\":\"01\",\"relationtypeName\":\"父亲\"},{\"diseasename\":\"脑卒中\",\"isdefault\":\"1\",\"relationtype\":\"01\",\"relationtypeName\":\"父亲\"},{\"diseasename\":\"冠心病\",\"isdefault\":\"1\",\"relationtype\":\"02\",\"relationtypeName\":\"母亲\"},{\"diseasename\":\"慢性阻塞性肺病\",\"isdefault\":\"1\",\"relationtype\":\"02\",\"relationtypeName\":\"母亲\"},{\"diseasename\":\"慢性阻塞性肺病\",\"isdefault\":\"1\",\"relationtype\":\"03\",\"relationtypeName\":\"兄弟姐妹\"},{\"diseasename\":\"恶性肿瘤\",\"isdefault\":\"1\",\"relationtype\":\"03\",\"relationtypeName\":\"兄弟姐妹\"},{\"diseasename\":\"肝炎\",\"isdefault\":\"1\",\"relationtype\":\"04\",\"relationtypeName\":\"子女\"},{\"diseasename\":\"结核病\",\"isdefault\":\"1\",\"relationtype\":\"04\",\"relationtypeName\":\"子女\"}]', '[{\"createTime\":\"2019-11-02\",\"diseasename\":\"开心病\",\"index\":1}]', '1', '1', 225, '2019-11-02 11:31:15', 225, '2019-11-02 11:31:15', NULL, '', '', '000000201709020012', NULL, 254790, '2017年七月十二', 40558);

二、执行json_extract()

1、使用json_extract()来处理数据

2、使用方式
$ . paramsName:取出一个key对应的value。
$ **.paramsName 、$ .[*].paramsName:取出json数组所有该字段key对应的value并以,的方式拼接在一起

MySQL中json_extract()函数的用法实例相关推荐

  1. mysql 中set函数的用法

    mysql 中set函数的用法 :当值为空时不进行赋值 update user_user <set><if test="nickname!=null and nicknam ...

  2. mysql中week()函数的用法

    mysql中week()函数是用来做周的统计和计算,返回日期的周数 例如统计今年每周有多少个注册用户 SELECT count(id) as count,week(create_time,1) as ...

  3. mysql中json_extract函数的使用?作用是什么?

    需求描述: 今天看mysql中的json数据类型,涉及到一些使用,使用到了函数json_extract来 获取json字段中某个key的值,在此记录下. 操作过程: 1.查看包含json字段的表信息 ...

  4. mysql中replace函数的用法

    ##-----MySQL数据替换即replace的运用-----## #这里主要介绍一些关于replace函数的用法.关于研究这个主要是发现replace功能很强大 #对于屏蔽关键字很有用处. #现在 ...

  5. mysql的count函数类型是什么意思_详细解读MySQL中COUNT函数的用法

    MySQL的COUNT函数是最简单的功能,非常有用的计算,预计由一个SELECT语句返回的记录数. 要了解COUNT函数考虑的EMPLOYEE_TBL的的表具有以下记录: mysql> SELE ...

  6. MySQL中trim()函数的用法

    trim函数可以过滤指定的字符串: 完整格式:TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str) 简化格式:TRIM([remstr FROM] ...

  7. MYSQL中coalesce函数的用法

    我先说目的:就是返回集合中第一个不为空的值,判断集合中的值都为空用的,下面看例子 coalesce():返回参数中的第一个非空表达式(从左向右依次类推): 例如: 1 2 3 4 5 select c ...

  8. Mysql中Cast()函数的用法

    Cast(字段名 as 转换的类型 ),其中类型可以为: CHAR[(N)] 字符型  DATE  日期型 DATETIME  日期和时间型 DECIMAL  float型 SIGNED  int T ...

  9. php中的ltrim,PHP中ltrim()函数的用法与实例讲解

    PHP中ltrim()函数的用法与实例讲解 PHP ltrim() 函数 实例 移除字符串左侧的字符: $str = "Hello World!"; echo $str . &qu ...

最新文章

  1. Spring的quartz定时器重复执行二次的问题解决
  2. ffmpeg avformat_open_input always returns “Protocol not found”
  3. Windows环境下利用VS和mingw编译LLVM
  4. linux c之命名管道简单使用
  5. JS 判断滚动底部并加载更多效果。。。。。。。。。
  6. python嵩天第七章课后题答案_python语言程序设计嵩天第七章答案
  7. Java基础---常用类之Math类 and Syetem类
  8. [HNOI 2014]道路堵塞
  9. latex_列表和表格环境_给tabular加lable标签问题
  10. cnn实现手写识别字体代码详解
  11. The package java.awt is not accessible的解决方案
  12. 【python实战】不让我复制?看我自制个带文字识别的截屏工具
  13. MAC Monterey升级后的L2TP问题的完美解决方案
  14. 使用shiro进行权限管理
  15. input中blur失去焦点事件与点击事件冲突的解决方法(vue)
  16. 【Houdini】导出FBX或OBJ模型的三种方法
  17. C语言 生成集合的幂集
  18. 控制器数据数据到btu_hci_msg_process调用流程
  19. 支持向量机(一)——深入理解函数间隔与几何间隔
  20. Python实现RSA加密算法

热门文章

  1. 力扣(13.278)补8.23
  2. 16进制颜色代码大全
  3. 002_wz_kaggle泰坦尼克号深度学习实现
  4. 德累斯顿工业大学计算机学院,德累斯顿工业大学好不好
  5. java高级架构师年薪,深度集成!
  6. ABB机器人6.13版手册下载
  7. GCTA学习3 | GCTA的两篇NG:fast-LMM和fast-GLMM
  8. 使PC端网页宽度自适应手机屏幕大小
  9. EXCEL基础操作:隐藏,冻结,查找(搜索),锁定,保护
  10. win10亮度_Win10玩游戏优化设置教程,八大游戏优化设置,让游戏体验更佳