mysql - 使用mysql解析json

标签 mysql json parsing

如何在MySQL级别解析Json? 我在 XAMPP 中使用了 MySQL 版本 5.6.26

MySQL --version
MySQL  Ver 14.14 Distrib 5.6.26, for Win32 (x86)

我创建了一个表。

CREATE TABLE `message` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `data` text,
  PRIMARY KEY (`id`)
);

插入一些行

INSERT INTO message (id,data) VALUES(1,'{"from":"chris","title":"Awesome Article","body":"Lorem ipsum dolor sit amet, consectetur adipiscing elit."}');
INSERT INTO message (id,data) VALUES(2,'{"from":"loren","title":"Another Article","body":"Lorem ipsum dolor sit amet, consectetur adipiscing elit."}');
INSERT INTO message (id,data) VALUES(3,'{"from":"jason","title":"How to run a query","body":"Lorem ipsum dolor sit amet, consectetur adipiscing elit."}');

我尝试获取 Json 值:

SELECT Json_get(data,'title') FROM message WHERE id=2;

我收到错误:

SELECT json_get(data,'title') FROM message WHERE id=2; ERROR 1305 (42000): FUNCTION mydatabasename.json_get does not exist

有人有想法吗?

最佳答案

您可以使用common_schema解析json数据,尝试以下代码可能会对您有所帮助:-

SELECT common_schema.extract_json_value(data,'title') FROM message WHERE id=2;

关于mysql - 使用mysql解析json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34510546/

相关文章:

MySQL - DATEDIFF 查找上一行(相同 ID)

mysql - SQL 设计决策 : Should I merge these tables?

java - 如何将任意 JSON 转换为 Java 中可用的结构

java - 解决 JavaCC token 歧义

仅当使用限制时才显示 php 和 mysql 查询结果

php - 在全动态和重数据库网站中使用memcached好吗?

带有 key :object 的 JavaScript json

c# - 如何使用 JsonProperty 获取嵌套属性

javascript - jQuery 多维 JSON 数组在同一个 JSON 中具有不同的数据?

algorithm - 作为有限状态机的通用语言解析器