接网站建设外包的工作总结,铭品装饰公司,wordpress和网盘结合,网站开发工具选择Mysql更新blob存储的Josn数据
记录一次mysql操作blob格式存储的json字符串数据
1、检查版本
-- 版本5.7以上才可以能执行json操作
select version(); 2、创建测试数据
-- 创建测试表及测试数据
CREATE TABLE test_json_table AS SELECT
UUID(),
{test1: { 2、创建测试数据
-- 创建测试表及测试数据
CREATE TABLE test_json_table AS SELECT
UUID(),
{test1: {value: 1, stringValue: 1}, test2: {value: 2, stringValue: 2}, test3: {value: 3, stringValue: 3}} datas;
-- 修改 datas字段类型为 blob;
ALTER TABLE test_json_table
MODIFY COLUMN datas blob NOT NULL AFTER UUID();3、操作–查看数据
-- 查看验证数据是否正常
-- 查看验证数据是否正常
select * from test_json_table;
select convert(datas using utf8) from test_json_table;
-- 查看test1的value字段
select JSON_EXTRACT(CAST(CONVERT(datas USING utf8) as json), $.test1.value) from test_json_table;
-- 或
select datas- $.test1.value from(select CONVERT(datas USING utf8) as datas from test_json_table) temp;
-- 获取test1的value的值直接返回字符串没有引号
select datas -$.test1.value from (select CONVERT(datas USING utf8) as datas from test_json_table) temp;
4、操作-修改
-- 修改 test1.value 0
update test_json_table set datas JSON_REPLACE( CAST(CONVERT(datas USING utf8) as json), $.test1.value, 0) ;