解决mysql5.7及以下版本无法解析json字符串的问题

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介:

#把key->value(json字符串)拼成sql语句

DELIMITER //

DROP FUNCTION kvJsonData//

CREATE FUNCTION kvJsonData(tableName char(20),medKeys text,medValues text,orderId int(11))

returns text

BEGIN

declare num int(11);

declare count int(2) default 1;

declare strValues text default "";

declare strKeys text;

declare ret text default "";

set strKeys=concat(medKeys,',`order_id`');

set ret=concat("insert into ",tableName,"(",strKeys,") values");

set num= LENGTH(medValues) - LENGTH(REPLACE(medValues, '#', ''))+1;

while count<=num do

if count=1 then

set strValues=concat(SUBSTRING_INDEX(medValues,'#',count),',',orderId);

else

set strValues=SUBSTRING_INDEX(medValues,'#',count);

set strValues=SUBSTRING_INDEX(strValues,'#',-1);

set strValues=concat(strValues,',',orderId);

end if;

set ret=concat(ret,"(",strValues,"),");

set count=count+1;

end while;

set ret=substring(ret,1,LENGTH(ret)-1);

return ret;

END

//

DELIMITER ;



 本文转自 Lee_吉 51CTO博客,原文链接:http://blog.51cto.com/12173069/1961285

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
数据库 索引 关系型数据库
Nextcloud 解决 MySQL 没有支持 4 字节字符时报错: SQLSTATE[42000],解决办法
根据 Nextcloud 控制面板安全及设置警告,解决最后一个报警,不支持 4 字节的问题时,遇到该问题的解决方案。
3021 0
|
28天前
|
JSON 关系型数据库 MySQL
理解和利用MySQL中的JSON功能
理解和利用MySQL中的JSON功能
47 2
|
22天前
|
存储 JSON 关系型数据库
MySQL JSON 类型:功能与应用
MySQL JSON 类型:功能与应用
|
2月前
|
JSON 关系型数据库 MySQL
mysql json 支持
mysql createCollection
20 0
|
10月前
|
JSON 关系型数据库 MySQL
mysql中保存并操作json对象
mysql中保存并操作json对象
|
存储 JSON JavaScript
【mysql】JSON 类型
【mysql】JSON 类型
197 1
【mysql】JSON 类型
|
存储 JSON 关系型数据库
MySQL Json类型的一个坑
MySQL中JSON类型有个隐藏的坑,底层会对json结构重排序后保存,目的是为了优化搜索效率;但是针对结构不能改变的业务来说,就是一个大坑
1011 0
MySQL Json类型的一个坑
|
存储 JSON 关系型数据库
MySQL JSON数据类型实用指南
简介:在本教程中,您将学习如何使用MySQL JSON数据类型, 以及数据库中存储JSON文档。
340 0
|
存储 数据采集 JSON
如何不写一行代码把 Mysql json 字符串解析为 Elasticsearch 的独立字段
1、事出有因 实战问题:有数百万数据需要导入 Elasticsearch 做性能对比测试,但当前数据存储在 Mysql 中,且核心字段以 Json 字符串形式存储。Mysql 存储如下所示:
596 0
如何不写一行代码把 Mysql json 字符串解析为 Elasticsearch 的独立字段
|
JSON 关系型数据库 MySQL
给MySQL增加mysql-udf-http和mysql-udf-json自定义函数,让MySQL有调用http接口和查询直接回JSON的能力
1、安装mysql-udf-httpyum install -y libcurl*下载地址:http://pan.baidu.com/s/1nuYZqR3tar zxvf mysql-udf-http-1.
2347 0

热门文章

最新文章