1、建表
-- 建表 drop table if exists ta_product2; CREATE TABLE ta_product2( id int primary key auto_increment, productCode varchar(50) comment '产品Code', productAttrJson text comment '产品json串' )engine=innodb;
2、插入数据
-- 插入数据 INSERT INTO ta_product2 VALUES(NULL, '20170109001','{"saleAmount":"100","productName":"20160620,-qbs002,金融"}');
SELECT * FROM ta_product2;
id productCode productAttrJson ------ ----------- -------------------------------------------------------------- 1 20170109001 {"saleAmount":"100","productName":"20160620,-qbs002,金融"}
3、根据json的key查询对应的值
SELECT SUBSTR(productAttrJson, LOCATE('"saleAmount"',productAttrJson)+LENGTH('"saleAmount":"'), LOCATE('",', productAttrJson,LOCATE('"saleAmount"',productAttrJson))-(LOCATE('"saleAmount"',productAttrJson)+LENGTH('"saleAmount":"'))) AS SALE_AMOUNT FROM ta_product2;
注:固定写法,只需要改key就可以查出对应的值了。
SALE_AMOUNT ------------- 100