mysql(5.6及以下)解析json

#json解析函数    DELIMITER $$DROP FUNCTION IF EXISTS `json_extract_c`$$CREATE FUNCTION `json_extract_c`(details TEXT,required_field VARCHAR (255)) RETURNS TEXT CHARSET latin1BEGINSET details = SUBSTRING_INDEX(details, "{", -1);SET details = SUBSTRING_INDEX(details, "}", 1);RETURN TRIM(  BOTH '"' FROM SUBSTRING_INDEX(    SUBSTRING_INDEX(      SUBSTRING_INDEX(        details,        CONCAT('"',          SUBSTRING_INDEX(required_field,'$.', -1),'":'        ),-1      ),',"',1    ),':',-1  )) ;END$$DELIMITER ;example:select json_extract_c(json, "$.totalDays"), json from item limit 100;
CREATE TABLE `json_test` ( `id` int(11) DEFAULT NULL, `person_desc` text COLLATE utf8mb4_unicode_ci) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;insert INTO json_test values(2,'{"firstName":"Sergei","lastName":"Rachmaninoff","instrument":"piano"}');SELECT id,json_extract_c(person_desc,'$.lastName') as "keys" FROM json_test;
CREATE DEFINER=`zhangfen`@`%` FUNCTION `json_extract_c`(details TEXT,required_field VARCHAR (255)) RETURNS text CHARSET latin1BEGINSET details = SUBSTRING_INDEX(details, "{", -1);SET details = SUBSTRING_INDEX(details, "}", 1);RETURN TRIM(  BOTH '"' FROM SUBSTRING_INDEX(    SUBSTRING_INDEX(      SUBSTRING_INDEX(        CONCAT('"":"",',details),        CONCAT(          '"',          SUBSTRING_INDEX(required_field,'$.', -1),          '":'        ),        -1      ),      ',"',      1    ),    ':',    -1  )) ;END

更多相关文章

  1. MySQL系列多表连接查询92及99语法示例详解教程
  2. 《Android和PHP最佳实践》官方站
  3. android用户界面之按钮(Button)教程实例汇
  4. Android(安卓)- Manifest 文件 详解
  5. TabHost与RadioGroup结合完成的菜单【带效果图】5个Activity
  6. Android的Handler机制详解3_Looper.looper()不会卡死主线程
  7. Android(安卓)UI开发第十七篇——Android(安卓)Fragment实例(Lis
  8. Android——Activity四种启动模式
  9. Selector、shape详解(一)

随机推荐

  1. TextView的drawable属性
  2. Android Support Package
  3. android 获取MAC
  4. Android四种Activity的加载模式
  5. Android - 干货收集。
  6. 视频课程汇总
  7. android流式布局热门标签的实现
  8. android:cacheColorHint,android:listSel
  9. shape .xml
  10. 安装Intel HAXM为Android 模拟器加速,30秒